我最近将我的subversion客户端升级到1.8.0,即使我们公司的subversion服务器是1.6.11,因为我检查它的所有地方似乎都应该兼容。
基本命令工作正常(更新,提交等)。问题是,当我尝试执行一些更复杂的命令(如重定位)时,或者我尝试从maven release-plugin生成一个版本。在这种情况下,我收到以下错误:
[ERROR] svn: E175002: Unable to connect to a repository at URL 'https://mycompaniesserver.com/svn/repo/trunk/project'
[ERROR] svn: E175002: OPTIONS request on '/svn/repo/trunk/project' failed: 503 Service Unavailable
我的同事使用1.6到1.7的最新客户似乎没有。
我的猜测是Subversion 1.8发送了一些HTTP OPTIONS命令,旧版本的客户端没有这些命令,而subversion服务器的防火墙o代理(不是subversion本身)拒绝它们。
除了恢复到较旧的subversion客户端(因为我已经将所有项目转换为1.8格式)之外,有没有办法阻止发送这些较新的格式消息?或者是否有任何明确的规则需要添加到subversion服务器的防火墙,以便1.8客户端可以工作?
编辑:我回到1.7.x客户端并且everthing工作正常,但我真的想找到一种方法,我可以使用1.8客户端而不需要服务器的系统管理员。
答案 0 :(得分:2)
我在通过https代理连接到subversion服务器1.5.1时,与subversion客户端1.8.0到tortoisesvn 1.8.0有同样的问题。通过使用较旧的subversion客户端版本来解决它。
答案 1 :(得分:2)
我想,您可以阅读Subversion 1.8发行说明中的章节"HTTP client support based on neon has been removed",注意Skelta | Bulk模式的服务器端和客户端配置选项,并从表中测试客户端 - 服务器模式(与您讨论)网络管理员) - 您可以使用1.8
从批量转移到skelta另一个版本 - 中间块中的proxy | firewal
无法连接到URL
的存储库
svn-client的新变更活动
使用Kerberos或NTLM身份验证时,...每个HTTP请求和响应添加一个2-4 KB的标头
答案 2 :(得分:1)
IIRC这是1.8.0中的错误。安装一个后来的1.8.x版本。
答案 3 :(得分:1)
有这个问题。与设置无关只是最新版本的Tortoise不能与我服务器上安装的SVN版本一起使用。我下载了先前版本的Tortoise,问题解决了。
(有1.8版本,下载1.7并且它有效。有趣的是;然而,在将服务器上的SVN升级到1.8 Tortoise 1.8之后仍然无法工作,我只能连接Tortoise 1.7。
答案 4 :(得分:1)
作为另一个数据点,我遇到了与1.8客户端通过http与1.6服务器通信的问题。声称符合http 1.1的方式有一些狡猾的代理。 Subversion虽然真的推动了http协议。
1.7客户端有两个http库:WebDAV和Serf。 WebDAV在1.8中被删除,只留下了Serf http库。
我必须在我的svn 1.8客户端配置文件中明确关闭分块传输。然后一切正常(呃,除了包含新文件的任何签到,叹息!)。
查看Known Issues in 1.8中的第一个条目,然后阅读http-chunked-requests = no
文件中的~/.subversion/servers
答案 5 :(得分:0)
我相信这个问题可能已在其他地方得到解答。然而,最近在处理我的项目时,我遇到了同样的问题并应用了其他地方给出的解决方案,即评论
图片中上面给出的行对我来说没有用,因为它已经被注释掉了。仅供参考,该文件位于本地系统中的以下位置 强文 C:\ Documents and Settings_username_ \ Application Data \ Subversion \ servers
我们使用Subversion eclipse插件来完成所有操作。它发生的原因是因为subversion请求被代理,不支持很少的HTTP方法。
作为解决方案我做了以下。在你的eclipse IDE中
转到窗口>偏好>网络连接。如果“Active Provider:”中的值不是Direct,则将其更改为Direct。重试您尝试的操作,它应该像魅力一样工作。 : - )
答案 6 :(得分:0)
在我的案例中,我正在使用以下解决方案:
转到
%APPDATA%\Subversion\servers
将广告添加到以下行的末尾:
http-chunked-requests = no