我将我的分支合并到master中,并推送,认为一切都很好。事实证明代码有问题,我想要一种恢复合并提交或整个分支的方法,无论哪个更合适,这样其他人就可以轻松地继续工作,就像我的合并从未发生过一样。
然后我打算修复我的分支,并再次合并它。读取man git-revert表明,如果我使用-m恢复整个分支,我将能够重新合并。
发布于 2012-03-13 20:02:02
只需将HEAD重置为以前的提交:
git reset --hard HEAD^您没有在问题中说明是否推送了有问题的合并,因此如果是这样,则必须使用--force推送(因为您已经重写了主分支上的历史记录)。
请注意,如果其他开发人员将他们的工作建立在错误提交的基础上,那么重写历史可能会给他们带来问题。在这种情况下,您可能需要考虑:
git revert HEAD然而,这将创建一个新的提交,它与HEAD现在指向的提交相反,并将污染存储库。从这个意义上讲,重置是最好的,因为您可以摆脱两个提交,一个是有故障的,另一个是补偿有故障的。
https://stackoverflow.com/questions/9683494
复制相似问题