TortoiseSVN无法连接

我有一个Apache共享主机Linux帐户上运行的svn服务器。

症状是,我可以连接到托pipesvn与PuTTY的服务器就好了,但TortoiseSVN知识库浏览器无法连接。

我试过svn,svn + ssh,

如果我只是尝试svn我会得到:

E730060:无法连接到URL为svn://50.97.138.99:36901 / test'svn:E730060的存储库:无法连接到主机'50 .97.138.99':连接尝试失败,因为连接方不正确在一段时间之后响应,或者由于连接的主机未能响应而build立的连接失败。

如果我尝试使用svn + ssh,我会反复提示input密码,最终必须多次取消pwd对话框,错误是:

无法连接到URL'svn + ssh://wren.arvixe.com'中的存储库为了更好地debugging连接问题,请从Subversionconfiguration文件的[tunnels]部分的ssh中删除-q选项。 networking连接意外closures

我已经在这两天工作了,把我的心挖出来,开始变得神经质。

谢谢你的帮助。 我很乐意提供更多的细节/做实验/等我不知道什么细节任何人想要开始,所以对不起,如果没有足够的细节最初。

似乎有一些关于您的存储库是如何访问的混淆。 你不能简单地浏览svn+ssh://没有人设置它。 有人设置了吗?

我很惊讶你可以登录到服务器通过SSH(使用PuTTY),因为它是一个共享的托管服务器。 这通常是不允许的。 大多数共享托管站点不允许shell访问。

你在开头语句中提到了Apache svn服务器 。 然后,你尝试svn://svn+ssh:// 。 有四种独立的方式来设置Subversion服务器和访问Subversion:

  • 使用Apache httpd作为服务器 。 为此,需要Apache httpd进行正确的配置和编译。 你需要几个Apache插件,比如mod_dav_svn.somod_dav.so 。 你有这个设置吗? 如果这样做,则需要使用http://访问存储库,而不是像显示的那样访问svn://
  • 使用svnserve作为服务器 。 这很容易设置。 你可以像你所显示的那样使用svn://来访问你的仓库。 有人配置svnserve并让它运行?
  • 通过ssh使用svnserve 。 这个使用svnserve ,但是和ssh集成,可以使用Unix文件访问。 这是非常非常非常棘手的设置,我已经看到实际使用这个人的极少数的实例。 每个用户在访问存储库时都会触发自己的svnserve进程。 存储库可以直接访问它,并且您必须设置个人帐户以防止任何shell访问。 否则,用户可以直接操作存储库。
  • 使用直接文件访问在共享存储库时,强烈建议不要使用这种方式,因为必须授予所有用户对存储库的直接读/写访问权限。

问题在于,如果不知道Subversion如何在您的系统上安装,就无法帮助您。 你创建了存储库吗? 如果是这样,你开始svnserve进程访问它? 有人在该系统上设置了你的Subversion版本库吗? 如果其他人设置了存储库,则必须从中获取有关如何访问它的确切说明。

如果您是设置存储库的人,您是否设置了Apache或者您是否设置了svnserve? 如果你已经安装svnserve ,你使用默认的端口3690,或设置另一个端口使用? 你能确定这个端口是否被你的防火墙阻止了吗? 您可以使用telenet命令直接尝试访问端口:

C> telnet 50.97.138.99 3690

如果无法连接,则会看到“无法连接到远程主机”消息,这意味着svnserve没有运行,或者防火墙阻止了该端口。 由于您可以登录到服务器,请尝试登录到服务器,并直接访问该存储库:

$ svn日志svn://本地主机

如果你可以访问回购,你有svnserve运行,但你的防火墙阻止它。 如果你不能访问svnserve ,你可能没有运行。

试试看看你得到了什么。