未找到 Bash 命令(尝试将 Beyond Compare 与 Mercurial 集成并在 Cygwin 中使用它)

未找到 Bash 命令(尝试将 Beyond Compare 与 Mercurial 集成并在 Cygwin 中使用它)

我正在尝试将 beyond compare 与 mercurial 集成,我已经从使用 Beyond Compare 与版本控制系统将 mercurial 的页面放入.hgrc位于C:\cygwin\home\jerickson(我的 cygwin 主目录)的文件中

hg bcomp当我在 mercurial repo 中发出命令时,我得到以下内容

/bin/sh: C:\Program Files (x86)\Beyond Compare 3\BComp.exe: command not found

我需要修改什么才能使其正常工作?(这在 powershell 和 cmd 中有效)

作为参考,我的文件的相关部分.hgrc如下

[ui]
username = Jon Erickson
merge = bcomp

[extensions]
extdiff = 

[extdiff]
cmd.bcomp = C:\Program Files (x86)\Beyond Compare 3\BComp.exe
opts.bcomp = /ro

[merge-tools]
bcomp.executable = C:\Program Files (x86)\Beyond Compare 3\BComp.exe
bcomp.args = $local $other $base $output
bcomp.priority = 1
bcomp.premerge = True
bcomp.gui = True

[tortoisehg]
vdiff = bcomp

答案1

我确信这是一个空间问题。

我会尝试该cygpath实用程序,为您的 Beyond Compare 实用程序获取 DOS 8.3 样式路径(-d标志)。请记住,Cygwin 可以使用 Windows 路径,在这种情况下,我会利用它为您带来优势。

答案2

cygwin 不知道C:是什么,并且它绝对不喜欢路径中未转义的空格或括号。

尝试这个路径

/cygdrive/c/Program\Files\\(x86\)/Beyond\Compare\3/BComp.exe

(希望我逃脱成功了)

或者尝试将其放在引号中

“/cygdrive/c/Program Files (x86)/Beyond Compare 3/BComp.exe”

相关内容