如何回滚到最后一次提交本地分支和主分支?
$ git reset --hard HEAD^
HEAD is now at e861a3e Added push menu label.
$ git status
On branch master
Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded.
(use "git pull" to update your local branch)
nothing to commit, working tree clean
它让我拉。但如果我拉,我将从主分支获得相同的提交。
我在代码中犯了一个错误,我已经承诺并推动了。所以我需要回滚提交和推送。
如何正确完成?
答案 0 :(得分:2)
通常你应该不从远程删除提交。通常,您应不修改远程历史记录。有人可能已经开始在该提交之上进行更改。
通常还原提交要好得多。还原是一个新的提交,它撤消了还原提交中包含的所有更改。您使用
还原提交git revert COMMIT_HASH
然后,您将此提交推送到每个其他提交,并且COMMIT_HASH
的更改已消失。
在执行此操作之前,您必须撤消本地分支上的提交删除操作。您可以使用
执行此操作git reset --hard origin/master