0

当我尝试使用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

我该如何解决这种冲突?

非常感谢。

4

2 回答 2

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" %*

(注意:上面还设置了 home 目录。你应该把它指向你的 .ssh(keys)目录)

于 2015-09-24T22:31:34.690 回答
0

.bashrc我设法通过简单地在我的文件中添加一行来解决这个问题:

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

这会将 cwRsync 目录添加到 PATH 环境变量的开头,这意味着ssh当您这样做时,它的副本将移动到列表的顶部,where ssh因此成为默认值。

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

于 2015-10-14T12:06:53.920 回答