我正在尝试抓取Bro的源代码。如果我将“http://svn.icir.org/bro/trunk/bro/”放入浏览器,我可以很好地看到存储库。但是,如果我尝试命令“svn co http://svn.icir.org/bro/trunk/bro”,我会收到错误:
svn: PROPFIND request failed on '/bro/trunk/bro'
svn: PROPFIND of '/bro/trunk/bro': could not connect to server (http://svn.icir.org)
有点谷歌搜索似乎表明我应该更改我的〜/ .subversion / servers文件以包含
[global]
http-proxy-exceptions = ???
http-proxy-host = ???
http-proxy-port = ???
http-proxy-username = ???
http-proxy-password = ???
但我不知道使用什么实际值。我的浏览器设置为使用代理配置脚本,让我们假装它是“some.url.mycompany.com:port/file.name”
任何想法如何在给定http代理的情况下推断出svn代理的正确值?这是我需要IT人员为我设置的吗?
答案 0 :(得分:4)
您是否可以查看代理配置文件?如果是这样,您应该能够确定要使用的服务器和端口。如果您不需要登录即可访问互联网,您可以将用户名和密码留空。同样适用于例外情况。
当我在一家使用代理配置文件的公司时,我能够浏览到该文件以查看如何处理过滤。
来自WikiPedia的示例代理配置文件(虽然我确信这些文件因使用的代理软件而有很大不同):
function FindProxyForURL(url, host) {
// our local URLs from the domains below example.com don't need a proxy:
if (shExpMatch(url,"*.example.com/*")) {return "DIRECT";}
if (shExpMatch(url, "*.example.com:*/*")) {return "DIRECT";}
// URLs within this network are accessed through
// port 8080 on fastproxy.example.com:
if (isInNet(host, "10.0.0.0", "255.255.248.0")) {
return "PROXY fastproxy.example.com:8080";
}
// All other requests go through port 8080 of proxy.example.com.
// should that fail to respond, go directly to the WWW:
return "PROXY proxy.example.com:8080; DIRECT";
}
如果存储库的url与任何规则都不匹配(因此将使用:PROXY proxy.example.com:8080; DIRECT):
[global]
# http-proxy-exceptions = ???
http-proxy-host = proxy.example.com
http-proxy-port = 8080
# http-proxy-username = ???
# http-proxy-password = ???
答案 1 :(得分:2)
听起来您正在工作场所尝试此操作,并且您的网络管理员已设置代理服务器以允许网络流量通过。除非您使用代理,否则所有其他流量都会被阻止(这就是您在浏览器中使用代理设置以允许浏览器运行的原因)
另请注意,代理本身可能正在进行进一步过滤,因此即使您设法将代理服务器用于SVN,该流量仍可能被阻止。这完全取决于网络安全性的严重程度。
在我看来,最好只是让您的IT部门向您提供代理服务器的详细信息。他们甚至可能会为您提供不同的用途。或者他们可以调整防火墙策略以允许您尝试通过的流量类型。
尝试从浏览器的代理设置中挖掘出线索,并使用它来实现这一目标。
答案 2 :(得分:-1)
通常,解决此问题的最简单方法是浏览到Fire Fox中的存储库...接受传递的SSL证书...并记住接受。然后你可以毫无问题地浏览SVN / Tortoise。