我被要求为Visual Studio 2008设置VisualSVN。
由于防火墙限制和服务器配置。我需要使用 ssh tunneling 。
我的问题是:
本地机器需要通过ssh连接到网关机器,然后连接到Subversion服务器,以便
Local machine ---{ssh}--- gateway ---{ssh}-- Subversion server
我不确定这样做的正确过程。
似乎我必须使用 plink 启动ssh进程以打开本地端口并将其转发到远程subversion服务器。
例如:plink user@gateway -L 22:192.168.1.1:22
然后当VisualSVN启动时,它使用 Tortoiseplink 使用svn+ssh://username@localhost:22/myrepo
这看起来非常笨重。
首先,需要几个步骤来设置连接
其次我需要运行 plink ,这会在桌面上留下命令提示符(clutter = yuck)。
最后,我需要使用两个不同的程序来做同样的事情。 ( plink + tortoiseplink )
问题是tortoiseplink不在后台运行。一旦我连接到ssh网关并输入密码,它就会再次关闭。所以我不能用它来创建初始连接。
如果我在VisualSVN中使用plink而不是tortoiseplink,那么我永远不会被提示输入密码。所以它只是挂起一个打开的命令提示符而没有密码请求。
有没有办法设置VisualSVN以便一切都在一个命令行中发生?
我已经搜索了一个合适而干净的方法来从VisualSVN隧道到远程服务器并且发现很少。这一切要么假定一跳(不是像我的那样两个),要么掩盖所有硬位。
VisualSVN如何处理不同服务器上的多个存储库?您似乎需要为每个项目使用相同的ssh命令行,这意味着只有一个存储库。或至少只有一位主持人!