恢复交互式git rebase
完成一个功能分支后,在git rebase -i
我意外删除了所有提交。 我不完全确定,但我怀疑,我没有压扁提交,而是用提交消息替换了整个条目。
http://shafiulazam.com/gitbook/4_interactive_rebasing.html说:
交互式rebase可以做的最后一件有用的事情就是放弃提交。 如果不是为提交行选择“pick”,“squash”或“edit”,只需删除该行,它将从历史记录中删除提交。
我的问题是:有没有办法恢复/取消这个?
如果你刚刚完成了rebase,你可以试试这里提到的:
git reset --hard ORIG_HEAD
作为JakubNarębski的详细资料:
ORIG_HEAD
是HEAD
先前状态,由具有可能危险行为的命令设置,以便于恢复它们。
Git有reflog的用处不大: HEAD@{1}
大致等于ORIG_HEAD
( HEAD@{1}
始终是HEAD
最后一个值, ORIG_HEAD
是危险操作前的HEAD
最后一个值)。
如果自rebase以来执行了一些操作, reflog仍然可以提供帮助。
你可以做“git reflog”并找回你的旧头。
链接地址: http://www.djcxy.com/p/23539.html上一篇: Reverting an interactive git rebase
下一篇: Undo Git Rebase