Git合并覆盖而不是冲突

时间:2016-11-24 07:09:48

标签: git git-merge

我试图合并两个存储库。但每当我合并时,它应该在sample.txt文件中产生冲突而不是覆盖相同的文件。接下来的步骤是附图.Git版本是:2.7.4 这个过程对吗?如果是的话,为什么我不会发生冲突?

repro

Full-size image here

1 个答案:

答案 0 :(得分:2)

这是预期的行为,这个用例不应该导致冲突。没有“真正的”合并完成,因为来自分支的更改可以简单地应用于master,就像其他分支从未存在一样(这称为“快进合并”)。合并前:

--A--B <-- master
      \
       C--D <-- branch

合并后:

--A--B--C--D <-- master

如果您想查看冲突,则必须创建如下历史记录:

--A--B--D <-- master
      \
       C--E <-- branch

现在,如果提交D“触及与C和E相同的行”,则当您尝试合并回主控时可能会发生冲突。