多个SSH之间的规则冲突

时间:2015-09-24 08:09:18

标签: ssh cwrsync

当我尝试使用grunt-rsync时,我遇到了“code 12”错误,我的理解是我的计算机上安装了多个ssh(Git和cwRsync)之间存在冲突:

where ssh
C:\Program Files\cmder\vendor\msysgit\bin\ssh.exe
C:\Program Files\cwRsync\ssh.exe
C:\Program Files (x86)\Git\bin\ssh.exe

我该如何解决这个冲突?

非常感谢。

2 个答案:

答案 0 :(得分:1)

您的msysgit ssh版本优先于cwrsync版本,这会导致问题。

您需要更改PATH环境变量或创建批处理文件以覆盖它。

@echo off
SETLOCAL
SET CWRSYNCHOME=C:\Program Files\cwRsync
SET HOME=c:\Users\*YourUserName*\
SET CWOLDPATH=%PATH%
SET PATH=%CWRSYNCHOME%\bin;%PATH%
"C:\Program Files\cwRsync\bin\rsync.exe" %*

(注意:以上也设置了家庭直播。你应该把它指向你的.ssh(密钥)目录)

答案 1 :(得分:0)

我设法通过在.bashrc文件中添加一行来解决此问题:

export PATH=/c/Program\ Files/cwRsync/:$PATH

这会将cwRsync目录添加到PATH环境变量的开头,这意味着ssh的副本会在您执行where ssh时移动到列表顶部,从而成为默认值。< / p>

对我来说,这个问题已经解决了我从msysgit运行grunt-rsync Grunt任务的问题(我提到它以防其他人遇到同样的问题)。