我无法尝试使用与TortoiseSNV在Windows 7工作站上以下语法检出回购:
svn co svn+ssh://user@ip/repo .
我做了什么来测试这个问题:
- 修改的TortoiseSVN的网络设置为指向.. \ TortoisePlink.exe
- 成功建立没有问题的ssh连接到目标机器
- 成功地从运行Ubuntu在OpenSSH工作站签出回购
当我尝试从Windows 7工作站在命令行上做上述语法我得到的错误:
svn: E720087: Unable to connect to a repository at URL 'svn+ssh:///user@ip/repo'
svn: E720087: Can't create tunnel:The parameter is incorrect.
有趣的是,如果我用乌龟图形用户界面来浏览回购我可以顺利打开,并检查了回购。 但我需要从脚本命令行仅仅做到这一点。
有什么建议?
对于SVN + SSH与龟工作,确保%SVN_SSH%
设为您的SSH客户端(可能是从龟或腻子plink.exe)和路径必须被写入要么正斜杠/
或转义反斜杠\\
。
尝试设置%SVN_SSH%
与砰砰的绝对路径,而逃离反斜杠,像C:\\Program Files\\TortoiseSVN\\bin\\TortoisePlink.exe
而不是..\TortoisePlink.exe
这也证明了在配置文件中的隧道段行是区分大小写。
例如:SH = $ SVN_SSH “C:/path/putty/plink.exe” -2 -C -i “C:/path/username/serversvn.ppk” 可能工作
和
SH = $ SVN_SSH “C:/path/PuTTY/plink.exe” -2 -C -i “C:/path/username/serversvn.ppk” 将无法工作
检查到的的TortoisePlink路径不是在你的乌龟SVN配置损坏...
- 开始>程序>乌龟SVN>设置
- 在常规设置,“Subversion配置文件:”点击“编辑”
- 这将用记事本打开配置文件
- 向下滚动到
[tunnels]
部分并检查值ssh
应该是取消注释,使用双斜线等等-我有问题,因为似乎是在路径的开始一个Unicode控制代码。
### On Windows, if you are specifying a full path to a command,
### use a forward slash (/) or a paired backslash (\\) as the
### path separator. A single backslash will be treated as an
### escape for the following character.
ssh = C\:\\Program Files\\TortoiseSVN\\bin\\TortoisePlink.exe