git merge,保留两者

4ktjp1zp  于 2023-04-10  发布在  Git
关注(0)|答案(3)|浏览(136)

对于合并,我用这个来“保留我的”

git merge -X ours foo

这个代表“保住他们的”

git merge -X theirs foo

但是在我最近的合并中,最好是保留两边。Git是否有一个“策略”来避免手动编辑文件?

axzmvihb

axzmvihb1#

没有解决这些冲突的“合并策略”。
但是,如果你真的想要这样的冲突:

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

决心

Foo
Bar

然后您可以配置'merge driver'。从gitattributes手册页:
联合
对文本文件运行三向文件级合并,但从两个版本中提取行,而不是留下冲突标记。这往往会使结果文件中添加的行以随机顺序出现,用户应验证结果。如果不了解其含义,请不要使用此方法。
在.gitattributes中添加一行代码以使用以下命令:

*.whatever merge=union
wydwbb8l

wydwbb8l2#

这个怎么样?
grep -v -e'^<<<<<<<' -e '^>>>>>>>' -e'=======' filename.txt > filename.tmp
mv filename.tmp filename.txt

xienkqul

xienkqul3#

有时候一大块代码需要冲突解决。当我想保留 both 时,我这样做:
1.复制整个代码块。因此,有两个示例。
1.删除第一个示例上的HEADours 部分。
1.在第二个示例上删除要合并的部分或 * 它们的 * 部分。

相关问题