我已经为 pom.xml (Maven)文件配置了自定义git合并驱动程序。
配置:
.gitattributes 文件:
pom.xml merge=pommerge
.gitconfig 文件:
[merge "pommerge"]
name = A custom merge driver for Maven's pom.xml
driver = mergepom.py %O %A %B
这非常适合解决此类文件中的冲突。不幸的是,这并没有解决 pom.xml 文件的所有问题。只有当 pom.xml 更改时才会在合并时调用此驱动程序主要分支(因此,我们称之为“git merge otherbranch'”的分支)和我们想要合并的分支(' otherbranch')。
我们希望始终将pom文件的合并驱动程序用于pom文件,即使pom文件只在1个分支中更改,并且可以合并而不会发生冲突。
有没有办法强制我们的定制' pommerge'司机在这种情况下?
更新 我几乎尝试过任何事情,但没有运气。我甚至签出了git源代码,并在代码中添加了更多的日志记录并安装了/ MAKE以确定是否可以找出是否有某个特定的扩展点,我可以以某种方式使用它。 但是代码很难理解在哪种情况下遵循代码中的哪条路径,所以这种努力比解决方案产生了更多的挫折;)..
我可以使它工作的唯一方法,不是解决方案,是在合并之前在两端(分支)更改文件..但这不是非常用户友好
我仍然希望有人提出天才解决方案或线索,这有助于我进一步应对这一挑战。
谢谢大家的时间!
答案 0 :(得分:0)
您想要的是自定义合并策略,并且您已定义合并驱动程序。
仅在冲突时调用驱动程序,而在合并两次提交时使用策略。
有关如何设置解决方案的信息,请参阅此答案: