在git checkout中间意外停止命令如何恢复

时间:2012-06-08 02:48:52

标签: git

我跑了git checkout并在中间停止了这个过程。现在我无法切换分支,因为它抱怨我将覆盖本地文件。我该如何解决这个问题?例如

git checkout egotailer 错误:checkout将覆盖对以下文件的本地更改: ...

我试过

git clean -d -x -f

但它没有帮助

2 个答案:

答案 0 :(得分:3)

好吧,如果您知道您的存储库是最新的并且您没有任何未完成的事情要检入,只需将您的分支重置回HEAD。

git reset --hard HEAD

答案 1 :(得分:0)

git reset --hard

应该这样做。如果您未指定参考,则隐含HEAD

警告这是在Git中失去工作的最常见方法!!

清理目录的更安全的方法是

git stash -u

git stash --include-untracked

这将执行git reset --hard所做的事情,但您不会意外丢失信息。它仅适用于1.7.7版本。在此之前你必须

git add -A && git stash

同样的效果。

稍后,如果您发现自己缺少重要的工作,可以从藏​​匿处取回。