如何获得Git合并以忽略所选文件中的冲突?

时间:2015-11-30 11:12:23

标签: git git-merge merge-conflict-resolution git-merge-conflict

我正在将一个功能分支合并到主分支中,我想覆盖主分支中的一些文件。我想要覆盖的文件通常包含文本配置和一些编码为文本的二进制数据,因此它们必然会出现问题而且我不关心那些。它们旨在取代主人的那些。

Auto-merging frmShopSupportIncidents.lfm
CONFLICT (content): Merge conflict in frmShopSupportIncidents.lfm
Auto-merging frmNewShop.lfm
CONFLICT (content): Merge conflict in frmNewShop.lfm
Auto-merging frmCliCustsBrowser.lfm
CONFLICT (content): Merge conflict in frmCliCustsBrowser.lfm
Auto-merging custManager.lpi
Auto-merging clientShopFrame01.lfm
CONFLICT (content): Merge conflict in clientShopFrame01.lfm
Automatic merge failed; fix conflicts and then commit the result.

如何以任何方式忽略和覆盖冲突?

2 个答案:

答案 0 :(得分:5)

您可以使用:

git checkout --theirs .

接受所有上游更改。

或者,如果您知道只有某些文件要使用上游版本,则仅对这些文件应用结帐,对于其余文件,您可以手动解决冲突。例如

git checkout --theirs frmNewShop.lfm frmCliCustsBrowser.lfm  

答案 1 :(得分:1)

我想说配置文件不属于GIT中提交的开始。

但是,要保持“您的”更改,您可以遵循: https://medium.com/@porteneuve/how-to-make-git-preserve-specific-files-while-merging-18c92343826b#.r3hadlpt5