当我尝试使用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
我该如何解决这个冲突?
非常感谢。
答案 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任务的问题(我提到它以防其他人遇到同样的问题)。