【问题标题】:Mercurial premerge = false only for specific files, = true for all others?Mercurial premerge = false 仅适用于特定文件,= true 对所有其他文件?
【发布时间】:2010-10-12 22:59:28
【问题描述】:

Mercurial 是否可以自动合并除特别指定的文件之外的所有更改?对于特定文件,有些行可能会被覆盖,因此我希望它强制使用可视化合并工具进行手动合并。

这种情况的用例是从父存储库中提取并使用相同的代码构建不同版本的应用程序。特定文件将包括 Visual Studio 项目文件和 AssemblyInfo 文件 - 我想保留特定于版本的引用和 .NET 框架来构建。有关我的场景的更多背景,请参阅http://kiln.stackexchange.com/questions/2320/best-practice-to-maintain-different-build-configs-for-the-same-code

【问题讨论】:

    标签: mercurial merge


    【解决方案1】:

    是的,您可以为每个文件配置单独的合并工具,如果您愿意,它们只能通过合并前标志有所不同:

    [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

    【讨论】:

      猜你喜欢
      • 2023-02-10
      • 2019-01-08
      • 2018-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-24
      相关资源
      最近更新 更多