考虑一个具有两个中心分支/克隆的 Hg 项目 - 例如 DEV 和 PRD。当有人将修补程序推送到 PRD 时,中央服务器上的自动脚本会转到 DEV 并提取新更改。然后它会尝试将修补程序合并到 DEV 中。
问题是集成到 Hg 中的合并工具很糟糕——一旦对同一个文件进行并行更改,它就会失败。举个例子:
parent:3,7c
four
five
six
seven
child1:3,7c
four
five5
six6
seven7
child2:3,7c
fourmore
five
six
more
seven
如您所见,这里没有实际的冲突。如果我们在本地使用 kdiff 进行合并,它可以解决这个简单的情况而无需用户输入!
我想要一种让中央服务器来管理这些案例的方法。我想过在静默模式下使用 kdiff3,但我无法在其上安装 kdiff3(这是一个仅 CLI 的系统,我们甚至没有管理员访问权限),但也许有一种方法可以将 diff3 插入 hg merge 所以它可以解决这样的简单案例吗?我尝试在 hgrc 中设置“[ui] /n merge = diff3”,但它只是将三个版本吐出到标准输出。我错过了一些额外的配置吗?还是有更简单/更好的工具?
非常感谢