撤消git rebase在本地跳过

时间:2019-02-11 07:08:41

标签: git commit rebase git-commit git-rebase

我做了一个git rebase HEAD~3编辑一些提交消息,但是当我进入交互模式时,它显示的内容比我最近的3条提交消息还多。它显示了许多其他提交。每次我进行其他所有提交时,都会警告MERGE_CONFLICT,而我只是做了git rebase --skip,因为这些不是我的提交,它们也是旧的提交。我一直做git rebase --skip,直到完成基准调整为止。然后我做了git status,它说我的分支与上次提交有所不同。我从上一次提交中撤出,现在有很多冲突。在启动此REBASE之前,如何撤消所有操作。我只想将分支恢复到我推送的最后一个提交。完成改组后,我还没有强行推送,因此一切仍然是本地的。我要撤消所有这些。

1 个答案:

答案 0 :(得分:1)

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

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

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

例如,本地分支名称为b1

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