撤消多个git合并

时间:2015-11-03 21:00:19

标签: git version-control git-merge git-commit git-revert

我有两个git分支(master和fix_log_messages)。我一直在fix_log_messages分支中进行各种提交,然后定期将这些更改/提交合并到master中。因此,由于将fix_log_messages分支定期合并到主分支,主分支包含多个合并。

我现在需要从master分支中删除属于fix_log_messages分支的所有提交。换句话说,我需要撤消多个合并。我知道我可以使用git revert -m 1 <merge-commit>恢复单个合并。但是在分支上删除多个合并的工作流程是什么?

仅供参考 - 对master的更改已被推送到远程。所有合并均使用git merge --no-ff fix_log_messages执行。

1 个答案:

答案 0 :(得分:-1)

您可以使用git log查看要撤消的主分支的提交数量。例如,如果要回滚6次提交,只需键入:

git reset --hard HEAD~6

如果要恢复合并状态,可以使用reflog查看原始主分支中最后一次提交的提交ID,然后将其签出。