Git合并 - 琐碎合并?

Sen*_*mar 1 git conflict git-merge

如果基础和源具有相同的文件内容,并且目标分支/ repo具有一些其他文件更改,它保留哪些内容,源文件或目标文件?

详细解释

       A 
       | 
       B 
      / \
     C   D 
Run Code Online (Sandbox Code Playgroud)

假设在A-> B边缘添加了一个文件,然后在B-> C中再次删除文件,而在B-> D边缘单独留下.
我们想合并C和D.

如果共同的祖先是A,那么在合并C和D时没有变化(所以A,C没有文件&B,D有文件).

如果C(目的地)从D合并会发生什么?

如果D(目的地)从C合并会发生什么?

Mar*_*tos 5

合并是对称的(除了合并最终在一个分支或另一个分支上的事实).它将应用双方的更改并报告在此过程中遇到的任何冲突更改.在这种情况下,由于只有一侧有变化,因此最终结果看起来与具有变化的一侧相同.

顺便说一句,你可以非常安全地尝试这些操作,看看他们会做什么; 如果事情变成梨形,只需撤消.但请务必注意链接文章底部的警告.