Mercurial是否可以自动合并除特定指定文件以外的所有更改?对于特定文件,有些行可能会被覆盖,所以我希望它强制手动合并可视化合并工具。
用例是从父级仓库中提取并从相同的代码构建不同版本的应用程序。特定文件将包括Visual Studio项目文件& AssemblyInfo文件 - 我想保留特定于版本的引用和.NET框架来构建。有关我的方案的更多背景信息,请参阅http://kiln.stackexchange.com/questions/2320/best-practice-to-maintain-different-build-configs-for-the-same-code
答案 0 :(得分:4)
是的,您可以基于每个文件配置单独的合并工具,如果您愿意,它们可能仅因预合并标志而有所不同:
[merge-tools]
mymergetool.priority = 100
mymergetool.premerge = True
mymergetool.args = $local $other $base -o $output
mymergetool.executable = /path/to/mergetool
manualmerge.priority = 100
manualmerge.premerge = False
manualmerge.args = $local $other $base -o $output
manualmerge.executable = /path/to/mergetool
[merge-patterns]
filename_to_never_automerge = manualmerge
完整详情:https://www.mercurial-scm.org/wiki/MergeToolConfiguration