在某些文件的git中附加更改

时间:2016-09-14 01:29:02

标签: git

您好我有一个git文件,我不希望将更改合并到其中,相反,我希望更改始终附加到文件的末尾,而其余的项目文件正常合并。这可以在git中配置吗?

e.g。在上游,文件F有一行

1. |10-09-2016 00:12:43 : Check completed

在我的分叉中,我将F改为

1. |11-09-2016 00:10:55 : Check completed

然后我提交我的更改并从我的分支到上游创建一个MR。

而不是将ups上的文件F更改为

1. |11-09-2016 00:10:55 : Check completed

我希望在接受MR后,文件F在upsteam上成为

1. |10-09-2016 00:12:43 : Check completed
2. |11-09-2016 00:10:55 : Check completed

1 个答案:

答案 0 :(得分:2)

您可以尝试定义自定义合并管理器,它会在合并冲突的情况下聚合这两个版本。

您可以在此处查看完整示例:“strategy for git and append-mostly files

您还可以看到替代方案,例如添加.gitattributes

 myfile merge=union

在这种情况下不需要合并驱动程序。

union
  

为文本文件运行3向文件级合并,但从两个版本中获取行,而不是留下冲突标记   这往往会以随机顺序在结果文件中保留添加的行,用户应验证结果。如果你不理解其含义,请不要使用它。

(虽然不是“附加”其他版本)