自定义Git合并驱动程序没有重命名检测

fil*_*pos 9 git merge

我想设置一个带有自定义合并驱动程序的Git存储库,然后在合并时禁用重命名检测.

问题是,如果我使用默认的递归策略,我不能禁用重命名检测,如果我使用解析策略(不理想,但足够好),合并驱动程序将被忽略.

请注意,即使文件内容完全匹配,我也希望避免重命名检测.

的.git /配置:

[merge "my"]
    name = my merge
    driver = my_merge_driver %A %O %B
[merge]
    default = my
Run Code Online (Sandbox Code Playgroud)

尝试:

$ git merge -X rename-threshold=200%  # Equivalent to 100%
$ git merge -s resolve                # Custom driver ignored
$ git --version                       # git version 2.2.0-rc0
Run Code Online (Sandbox Code Playgroud)

fil*_*pos 2

从 Git 2.8.0.rc0 开始,合并递归算法现在接受选项“no-renames”(提交 4ce064d),所以我的问题现在解决了

$ git merge -X no-renames
Run Code Online (Sandbox Code Playgroud)