35

为了合并,我用它来“保留我的”

git merge -X ours foo

这是为了“保留他们的”

git merge -X theirs foo

然而,在我最近的合并中,最好保留双方。Git 是否为此制定了“策略”,以避免手动编辑文件?

4

2 回答 2

31

没有解决这些冲突的“合并策略”。

但是,如果您真的想要这样的冲突:

<<<< ours
Foo
=========
Bar 
>>>> theirs

解决

Foo
Bar

然后您可以配置“合并驱动程序”。从gitattributes手册页:

联盟

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

在 .gitattributes 中添加一行来使用它:

*.whatever merge=union
于 2012-11-07T06:14:39.807 回答
9

这个如何?

grep -v -e'^<<<<<<<' -e '^>>>>>>>' -e'=======' filename.txt > filename.tmp

mv filename.tmp filename.txt

于 2019-03-15T17:19:59.633 回答