【问题标题】:Make git merge result in a conflict when both versions have the same change当两个版本具有相同的更改时,使 git merge 导致冲突
【发布时间】:2018-05-28 09:56:56
【问题描述】:

假设在 git repo 中我有一个包含版本信息的文件:

version=42

现在,如果在两个单独的分支上,版本将递增到

version=43

并且这些分支被合并,git的标准合并机制不会产生合并冲突,因为两个版本是相同的(即使合并基础不同)。

通常这是想要的行为,但在这个文件的情况下,只要两个分支都与合并基础不同,我就会发生合并冲突。当在两个分支中编辑一行时(即使它们相同),是否有任何合并策略总是以合并冲突结束?

【问题讨论】:

    标签: git merge git-merge


    【解决方案1】:

    没有。事实上,不仅 Git 没有内置这样的策略,而且 Git 的其他支持例程(您可能想用它们来编写这样的策略)在这里也帮不了您。现有的合并驱动程序大多使用git read-tree(或其内部等效项)在索引内执行尽可能多的工作,并且git read-tree 本身将这些结果折叠回完全合并的阶段零条目,从而节省重新- 将相同的内容编码到递归和解析合并驱动程序中。

    罪魁祸首是here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-11
      • 1970-01-01
      • 2012-07-05
      • 1970-01-01
      • 2014-12-23
      • 2016-11-18
      • 2012-08-06
      • 2021-03-14
      相关资源
      最近更新 更多