0

如果我在带有 -N 选项的 cmd 窗口中运行 plink

C:\Program Files\Putty>plink -v -l user -pw passw -L 3690:1.2.3.4:3690 mydomain.com -N

可以使用 TortoiseSVN 和 Subclipse 访问远程 svn 存储库(svn://127.0.0.1)

将以下内容放入您的 Subversion 配置文件中:

ssh = C:/Program Files/TortoiseSVN/bin/Tortoiseplink.exe -v -l user -pw passw -L 3690:1.2.3.4:3690 mydomain.com

无法从 TortoiseSVN 或 Subclipse 访问远程 svn 存储库(svn+ssh://127.0.0.1)

Putty Fatal Error
Network error: Connection refused

TortoiseSVN Error
Unable to connect to repository at URL 'svn+ssh://127.0.0.1
4

1 回答 1

2

您似乎误解了svn://svn+ssh://访问方法之间的关系。

使用svn://,subversion 期望找到一个svnserve监听指定主机端口 3690 的进程。它将连接到该端口并使用颠覆协议。

您提到的 plink 命令行打开一个 SSH 会话,通过该会话连接到端口 3690 的隧道。因此,当您运行该命令时,svn://127.0.0.1只要 plink 仍在运行,该 URL 就会将您连接到您的存储库。

svn+ssh://另一方面,使用,subversion 期望找到一个 SSH 服务器。它将打开一个 SSH 连接,使用该连接启动一个新的 SSH 连接,svnserve然后使用颠覆协议。

因此,当给定 URL 时svn+ssh://127.0.0.1,subversion 会尝试与 localhost 建立 SSH 连接。那不是你想要的。

如果您的服务器配置为 svn+ssh 访问,那么 URLsvn+ssh://mydomain.com应该可以工作。

于 2012-04-15T13:15:00.443 回答