当分支上的文件分裂成主文件上的两个文件时,合并发生更改

这基本上是由主人的一个庞大的C类被重构成两个更小的类C1和C2的结果。 然后将C作为C2的一个子类,并为了向后兼容性而裁剪为骨架版本。 所以从那时起,主人包含C,C1和C2。 在那个主提交混帐说C被重命名为C1。 该事件发生前最后一次更新。 (所有C ++代码,如果它有助于可视化所涉及的文件)

显然,当我尝试将分支重新分配给主人时,需要解决冲突。

像往常一样,我使用了mergetool。

所以,现在mergetool提出了以下内容:在本地,我有骨骼版本的C.基地和远程有一堆更改C.

因为C的骨架版本存在于本地,所以我得出结论,从基本和远程的更改实际上应该进入C1,而只保留C。

我的问题是,我该怎么做?


可能在这个rebase实例上,更直接的解决合并冲突的办法是:

  • 使用合并vizualisation命令:
  •     git checkout --ours C
        git show :1:/path/to/C # check what need to be copied to C1 from Base
        git show :3:/path/to/C # check what need to be copied to C1 from remote
        git add /path/to/C
        git add /path/to/C1
    
  • git commit
  • 链接地址: http://www.djcxy.com/p/41725.html

    上一篇: Merge changes when a file on a branch has split into two files on the master

    下一篇: Git conflicts generated by cherry