不幸的是,我曾多次git reset --hard HEAD^
在多个文件中丢失了大量代码。有没有办法恢复这些提交,或者在这种情况下转发 HEAD 之前的位置,这样我就可以提出我丢失的那些行?
1884 次
2 回答
17
使用reflog恢复前一个 HEAD 的 sha1。特别是reflog 文章,您的安全网将与您特别相关。从那篇文章:
该命令最常见的用法是您刚刚完成了 a
git reset
并向后移动HEAD
了一些提交。但是,哎呀,您需要在第二次提交中留下的那段代码。废话。怎么办?
找到要返回的提交的 sha1 后,请使用以下内容:
git reset --hard 0a1b2c
于 2010-07-15T22:31:21.260 回答
0
git reset --hard HEAD@{1}
如果您刚刚提交了代码并且想要撤消它,请运行。
请参阅http://book.git-scm.com/4_git_treeishes.html上名为“Ordinal Spec”的部分
于 2011-12-22T03:14:00.287 回答