Aborted old git rebase and lost commits since the rebase started
废话!大约一周前,我在清理我的存储库时重新调整了一些提交,显然我没有真正完成它。今天,一周又几次提交之后,我去Rebase重新排序一些提交,从今天开始,它告诉我我已经在一个Rebase中间了。
为了以防万一,这应该是复制我的回购协议的提示。但我没有……相反,我运行的是当时听起来不错的
我有几个其他的分支是最近的,我已经推到了遥远的几次,但最近的变化似乎永远消失了。我不具备合适的功夫水平,不知道有没有办法恢复我的变化。
我搞砸了吗?
编辑-哇!谢谢大家!江户十一〔一〕太棒了!我完全康复了…吸取了教训。将tchalwak的答案标记为"第一个发布"。
检查
我还将把git repo目录复制到其他地方,作为一个做初步测试的地方,看看什么会起作用,这样你就可以处理你想要的任何事情,而不会丢失未跟踪的文件或使事情进入一种你无法返回的状态。
您应该能够用一个
然后您可以将当前分支重置为那些sha1
1 2 | # Suppose the old commit was HEAD@{2} in the ref log git reset --hard HEAD@{2} |
这有点像"撤销
有关恢复的其他示例,请参阅"用Git恢复丢失提交的图解指南"。