撤销 git rebase skip on local

Undo git rebase skip on local

我做了 git rebase HEAD~3 来编辑一些提交消息,但是当我进入交互模式时,它显示的不仅仅是我最近的 3 条提交消息。它显示了一堆其他提交。每次我继续这些其他提交时,它都会警告 MERGE_CONFLICT 而我只是做了 git rebase --skip 因为这些不是我的提交而且它们也是旧的提交。我一直在做 git rebase --skip 直到 rebase 完成。然后我做了 git status 并且它说我的分支已经偏离了我上次的提交。我退出了上次提交,现在我有很多冲突。我如何在开始此 REBASE 之前撤消所有操作。我只想将我的分支恢复到我推送的最后一次提交。变基完成后,我还没有强制推送,所以一切仍然是本地的。我想撤消这一切。

对您要返回的最后一次提交执行 hard reset

$ git log  # copy the commit hash
$ git reset --hard <commit-hash>

或者,如果您希望本地历史记录与远程分支相同,则执行 hard reset 本地分支与远程分支:

比如说,本地分支名称是 b1:

$ git fetch
$ git reset --hard origin/b1