【问题标题】:external diff tool meld not working with svn外部差异工具融合不适用于 svn
【发布时间】:2026-02-11 10:20:02
【问题描述】:

我在 ~/.subversion/config 中配置了以下内容以使用融合作为 difftool。 通过添加以下行 diff-cmd=svnmeld

然后在 /usr/bin/svnmeld 中添加以下可执行路径。

#!/bin/bash
meld "$6" "$7"

但后来我尝试对 svn repo 中的文件进行比较,我仍然没有看到 meld 被启动。

我正在使用颠覆,1.8.5..

任何想法,可能出了什么问题?

我尝试过在命令行上直接调用 meld svn diff diff-cmd=meld file.cpp 工作正常..

非常感谢

【问题讨论】:

  • 编辑您的脚本以包含meld 的完整路径,即。 /my/path/to/bin/meld 看看是否能解决当前的问题。如果是这样,那么在您的 env 文件中,您需要添加 `PATH="$PATH":/my/path/to/bin"。祝你好运。
  • thanks..试过但没有运气:(。可能是颠覆配置忽略了这个命令。如何调试这个?
  • 可以请一些svn专家帮忙
  • 不寻常的有 #/bin/bash 后跟对 $6 & $7 的引用。如果它们在包装脚本中是 6 美元和 7 美元,并且您只使用 2 个 args 调用 diff-cmd,请尝试将上面的更改为 1 美元和 2 美元。或者,也许你理解并确信这一点,所以你可以忽略这个想法。不是svn专家。祝你好运。
  • 将您的解决方案作为答案发布,2 天后您可以接受自己的答案,为您提供更多声望积分。很高兴您找到了问题的解决方案。

标签: bash svn


【解决方案1】:

看起来将这一行放在配置文件的 [helpers] 部分解决了这个问题!。我把它放在 [auto-props] 下的配置文件末尾。

【讨论】: