我的一个队友做出了承诺并推动了它。它导致了 git 树中的合并。问题是代码被标记了,这个推送使它看起来像提交在标记之前。实际情况是提交在标签之后。合并后还有其他推动。现在,我想从 gitk 树中完全删除这个提交。我怎样才能做到这一点?
问问题
402 次
1 回答
1
如果不重写历史然后用git push -f ...
. 如果您想恢复合并提交本身(合并到您的分支中的更改),您可以git revert <commit-hash>
像使用普通提交一样使用。它将创建一个新的提交,从合并提交中恢复更改。
从树中删除合并提交的简单方法是
git checkout -b TESTING
(创建一个临时分支进行测试)git branch TMP <commit-on-YOUR-branch-just-before-merge>
git rebase TMP -i
您必须在编辑器中删除合并到您的分支的其他分支的所有提交。如果一切顺利:
git branch -f YOUR_BRANCH TESTING
git push -f ...
于 2013-03-19T16:43:01.250 回答