Git gui mergetool TortoiseMerge错误的文件路径

时间:2013-11-06 17:56:07

标签: git msysgit git-gui mergetool tortoisemerge

我在配置git gui以运行tortoisemerge时遇到一些问题

在我的.config中有这些行

[merge]
    tool = tortoisemerge
[mergetool "tortoisemerge"]
        path = C:\\Program Files\\TortoiseSVN\\bin\\TortoiseMerge.exe
        cmd = 'C:\\Program Files\\TortoiseSVN\\bin\\TortoiseMerge.exe' -base:"$BASE" -mine:"$LOCAL" -theirs:"$REMOTE" -merged:"$MERGED"
        keepBackup = false

当我做的时候

来自bash的'git mergetool'tortoisemerge正确启动

我还修改了mergetool.tcl,在开关中添加了选择要使用的合并工具

tortoisemerge {
        set cmdline [list "$merge_tool_path" -base:"$BASE" -mine:"$LOCAL" -theirs:"$REMOTE" -merged:"$MERGED"]
    }

这使得tortoisemerge程序启动,但它引发了一个错误:

  

差异引擎由于错误而中止:

     

无法打开文件   '\“。\ Deliveries \ RASD.tex.BASE.tex \”':文件名,目录名或   卷标语法不正确

该文件实际存在于我的目录中。

作为一个文件行如何在这里看一个关于p4merge

的例子
p4merge {
        set cmdline [list "$merge_tool_path" "$BASE" "$REMOTE" "$LOCAL" "$MERGED"]
    }

正如您所看到的,代码非常相似。 如果P4MERGE工具使用此设置,我就不会尝试,这只是为了展示git gui的开发人员如何编写命令行。

这是构建路径的方式

    set MERGED   $current_diff_path
    set BASE     "./$MERGED.BASE$fileext"
    set LOCAL    "./$MERGED.LOCAL$fileext"
    set REMOTE   "./$MERGED.REMOTE$fileext"
    set BACKUP   "./$MERGED.BACKUP$fileext"

如何修改文件以提供tortoisemerge的正确路径? 为什么它不会给命令行带来任何问题?

0 个答案:

没有答案