是否可以设置 git merge 来自动解析? (git rerere)

问题描述 投票:0回答:2

我有 2 台笔记本电脑,其中有一个纯文本文件,该文件必须同步 - 它用作第三方软件的数据库。客户希望每天同步该文件的内容。

第一个想法是制作一个将文件上传到 Dropbox 的脚本,但如果发生冲突(两个用户删除 A 行,第一个用户添加 B 行,第二个用户添加 C 行),Dropbox 会创建一个单独的文件。 编辑:本来要提到,但忘了说:在发生冲突的情况下,B 行和 C 行都应该替换 A 行 - “同时采用”策略。

第二个想法是将文件放入存储库,听起来很简单,但我不确定如何设置自动解析,因为我不希望在此过程中出现合并工具 GUI。

git powershell command-line
2个回答
4
投票

您可以使用

git rerere
命令来帮助您。

这正是该命令的用途。

git rerere

名称代表“Reuse Recorded Resolution”。

# enabled the option to record the conflicts resolutions
git config --global rerere.enabled true

顺便说一句,如果您更喜欢

rerere
自动暂存它解决的文件(我愿意),您可以要求它这样做。你只需要像这样调整你的配置:

git config --global rerere.autoupdate true


1
投票

如果您希望通过包含双方的更改来解决所有冲突,请将以下内容添加到您的

.gitattributes
文件中:

* merge=union

这将使 git 做你想做的事。

© www.soinside.com 2019 - 2024. All rights reserved.