如何在没有结账的情况下放弃分支?

时间:2013-04-23 15:47:08

标签: git

我在分支上做了一些愚蠢的改变。

我可以删除分支,没问题。

但是我在上面的时候不能这样做。

所以,我不再想要那些改变了。

如果我 commit,我checkout到我的“好分支”,修改后的参考文件将会通过。

我希望不会发生这种情况。

如何正确删除和忽略这些更改?

4 个答案:

答案 0 :(得分:5)

你可以做到

git reset --hard

它将还原对已修改文件的更改。

此外,如果您要删除所有未跟踪的文件和目录,请执行

git clean -fd

答案 1 :(得分:1)

运行

git checkout .

然后切换到你想要的任何分支。

答案 2 :(得分:1)

执行以下操作,以获得干净状态并删除分支:

git reset --hard # resets git staging and your tracked files to the last commit
git clean -fd    # deletes untracked files (this is optional)
git checkout master
git branch -D <branch to remove>

答案 3 :(得分:0)

您可以git reset --hard放弃分支上的所有当前更改(如果您还有未跟踪的文件,也可以执行git clean -f)。

之后你可以git checkout任何其他分支,然后删除有问题的分支。 (提交本身将在存储库中保留一段时间,但很难找到它们。)