例如,在开始时,master
位于commit01
,这没关系,然后我将包含2次提交的branch001
合并到master
,然后成为:< / p>
commit04 Merge branch001 into master
commit03 commit from branch001
commit02 commit from branch001
commit01 master commit
然后我发现branch001
中存在一个大错误,所以我想回到commit01
,如果我使用git revert
,我应该使用哪个提交?
答案 0 :(得分:0)
如果你git revert commit04,它将恢复对合并执行的主分支的所有更改。
如果你还没有把它推到遥控器上,你可以运行git reset --hard commit01将你的工作树恢复到commit01的状态并擦除commits02-4。
答案 1 :(得分:0)
如果你没有推动你的主人,那么用 origin / master 重置 local / master
$ git fetch
$ git reset --hard origin/master
如果已经推送,则恢复您的合并提交(提交消息,如Merge branch 'branch-name' of ...
)
$ git log # copy the merge-commit-hash
$ git revert <commit-hash> # revert merge commit
$ git push origin HEAD # push to origin master