假设我在master上有一个XML文件:
<entity>
<field id="name" type="string"/>
<field id="tel" type="string"/>
</entity>
现在Jean创建分支J,其目的是处理邮政地址,Bob创建分支B,其目的是处理电子邮件地址。
所以Jean将文件更改为:
<entity>
<field id="name" type="string"/>
<field id="tel" type="string"/>
<field id="address" type="string"/>
</entity>
Bob将文件更改为:
<entity>
<field id="name" type="string"/>
<field id="tel" type="string"/>
<field id="email" type="string"/>
</entity>
出于这个问题的目的,让我们忽略附带的代码(Java东西......)。
我的问题是关于这两个演变的合并。一个简单的git merge显示了3rd&lt; field ...&gt;并排,作为同一条线上的冲突,即使这些线不共享共同的祖先(例如,如果我在两个分支上改变了第二个&lt; field ...&gt;)。
我想自动获取包含4&lt; field ...&gt;的合并文件线条,没有冲突。
我知道这样的合并作为默认是危险的,因为在许多情况下,这是不安全的。但是当我知道在我的情况下它是安全的,有没有办法告诉git从双方那里拿走所有新东西?