自动解决给定文件的git冲突

时间:2014-01-14 12:58:14

标签: git merge merge-conflict-resolution

我在repo中有数据库模式文件,总是有变化。是否有可能在合并时自动解决与ourstheirs策略的冲突?

2 个答案:

答案 0 :(得分:3)

通过向.git/config添加如下所示的节来定义custom merge driver

[merge "ours"]
  name = Always take our version
  driver = echo
[merge "theirs"]
  name = Always take their version
  driver = cat %B > %A

合并驱动程序接受许多参数 - %A是文件的“我们的”版本而%B是“他们的”版本 - 并且预计会留下合并的结果%A。因此,“我们的”合并驱动程序什么都不做,而“他们的”合并驱动程序可以只复制%B %A

现在,告诉git使用ours的{​​{1}}或theirs合并策略{/ 3}}:

db/schema.rb merge=theirs

# Or:

db/schema.rb merge=ours

答案 1 :(得分:0)

您可以将此文件添加到.gitignore