0

一位开发人员将分支feature2合并feature1并推送结果,但错误地解决了一些合并冲突。我签出提交A并正确feature1合并提交B(并且与其他开发人员合并的提交相同)。feature2AB

我将合并的结果提交给了一个分离的头,现在需要恢复其他开发人员的合并提交并将我自己的应用到feature1. 我怎样才能做到这一点?

4

1 回答 1

1

危险的方式:

1)标记您的分离提交,即git tag temp.

2)检查feature1分支。

3)git reset --hard temp用于移动分支的本地副本以指向您的提交。

4)git push -f origin feature1用于覆盖origin.

5) 删除带有 的标签git tag -d temp

小心地做这一切,并用它gitk来看看你在做什么。确保origin当时没有其他人在使用。如果您偏执,请在开始执行所有这些操作之前标记您同事的提交(这是一个好主意,以防您搞砸了)。

重要提示:如果其他人的工作基于您同事的合并,请在以这种方式进行之前三思而后行。每个人最终都需要根据您的新提交重新定位。

于 2012-10-17T19:14:51.767 回答