SVN提交未完成

时间:2013-11-16 13:36:45

标签: svn tortoisesvn visualsvn-server

当我在svn中提交文件时,我经常会遇到这样的情况:在传输完所有文件后,svn会挂起,然后最终超时,错误为svn: E175012: Connection timed out

当我上传超过20个文件时,似乎就会发生这种情况。

我相信在将所有文件传输到服务器之后会发生这种情况,因为在控制台中Transmitting file data之后将停止添加新句点,或者已将所有文件列为已在Tortoise中发送的文件。此外,如果我然后从存储库进行更新,我会为我刚刚尝试提交的所有文件进行合并(或者,更令人烦恼的是,要解决大量的冲突),然后当我再次提交时,没有任何内容提交 - 可能意味着所有文件都是第一次成功传输。

可能导致这种情况的原因是什么?看起来客户端正在等待来自服务器的“全部完成”消息,该消息永远不会返回到我的PC上?

我们的设置是客户端上的TortoiseSVN 1.8.2和服务器上的VisualSVN Server 2.7。

我在服务器上的VisualSVN事件日志中检查了错误消息,但没有。这种情况发生在办公室网络和VPN上,无论是使用Wi-Fi还是有线连接。

1 个答案:

答案 0 :(得分:7)

重要的是要知道提交修订版数据需要多长时间(转移完成的时间和发生timeout错误的时间。

并且不要忘记检查是否有任何提交后挂钩脚本正在处理您的提交。

如果您的提交包含一些大文件,则此错误可能是数据传输过程中仅发生超时的结果。要解决此问题,请按照下列步骤操作:

  • 验证客户端http-timeout中是否自定义了%APPDATA%\Subversion\servers。将它的值增加到900并查看问题是否已解决是有意义的。

  • 如果上述方法无效,请在服务器端增加TimeOut

    1. 在目标服务器上打开%VISUALSVN_SERVER%conf\httpd-custom.conf
    2. 添加以下行并保存文件:

      TimeOut 900

    3. 停止 - 启动VisualSVN Server实例循环。

    4. 可以在以下位置找到有关“TimeOut”指令的文档 http://httpd.apache.org/docs/2.2/mod/core.html#timeout