Git"手动合并"战略

时间:2013-11-12 18:49:31

标签: git merge

我有两个分支,项目正在这两个分支处工作。

我将分支A合并到分支B(git checkout BranchB; git merge BranchA),解决冲突,并测试分支B以发现它不再有效。

我很确定这个问题是由分支A提交的一两次提交引起的,git优先考虑分支B.因此,我正在寻找合并方式,其中“自动合并”不要发生这种情况,这样我就可以对如何解决冲突进行很好的控制。这可能吗?

3 个答案:

答案 0 :(得分:3)

我不确定是否一起跳过合并,但你可以使用

git merge --no-commit

这将允许您执行合并,然后在提交之前检查合并的文件。

答案 1 :(得分:0)

我认为最好的解决方案是在分支B上重新分支A而不是合并。 在这种情况下,您遇到冲突的每个提交都需要您的手动干预,您可以按照预期的方式有效地解决它。

在分支B上的分支A的重组后,分支A到分支B的合并将导致简单的快进

这样:

git checkout branchA
git rebase branchB

解决提交时的冲突

git add file_with_conflicts
git rebase --continue

答案 2 :(得分:0)

这似乎要求git-imerge。我承认我从未使用过它,但是它会让你能够对“中间”合并进行测试,或者在“与历史记录反转”风格合并中对各个提交进行测试。