我在分支上做了一些愚蠢的修改。如何在没有结帐的情况下让git丢弃分支?
我可以删除分支,没问题。
但是我不能这样做。
所以,我不希望这些变化了。
如果我不commit
,我checkout
我的“好分行”,修改后的引用将成为过去。
我希望不会发生。
我该如何正确地删除和忽视这些变化?
我在分支上做了一些愚蠢的修改。如何在没有结帐的情况下让git丢弃分支?
我可以删除分支,没问题。
但是我不能这样做。
所以,我不希望这些变化了。
如果我不commit
,我checkout
我的“好分行”,修改后的引用将成为过去。
我希望不会发生。
我该如何正确地删除和忽视这些变化?
你可以做
git reset --hard
它将恢复更改修改的文件。
此外,如果你想删除所有未跟踪文件和目录,然后执行
git clean -fd
运行
git checkout .
然后切换到你想要的任何分支。
执行以下操作,来获得一个干净的状态,并删除你的分支:
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>
您可以git reset --hard
丢弃在树枝上的所有电流变化(如果你有未跟踪文件,你也可以做git clean -f
)。
之后,您可以git checkout
任何其他分支,然后删除违规的分支。 (提交本身会保留在存储库中一段时间,但它们很难找到。)
这似乎是一个非常好的解决方案。这将检查在哪里? – MEM 2013-04-23 15:51:35
它只会将更改恢复到最新的提交。 – Headshota 2013-04-23 15:52:16
'git checkout .'不起作用,如果你已经进行了更改(分阶段更改保持不变) – tessi 2013-04-23 15:54:49