我正在尝试将 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”