如何为svn配置HTTP代理

如何为svn配置HTTP代理,svn,proxy,Svn,Proxy,我想检查存储库中的代码。我只能通过设置代理来访问存储库url。我想如果我想通过svn从相同的URL获取代码,我还需要配置一个代理。你们有人能告诉我如何在svn中配置HTTP代理吗 顺便说一句,我在Linux下使用命令行svn客户端。大多数*nixen在执行web请求时都理解环境变量“http\u proxy” export http_proxy=http://my-proxy-server.com:8080/ svn co http://code.sixapart.com/svn/perlbal

我想检查存储库中的代码。我只能通过设置代理来访问存储库url。我想如果我想通过svn从相同的URL获取代码,我还需要配置一个代理。你们有人能告诉我如何在svn中配置HTTP代理吗


顺便说一句,我在Linux下使用命令行
svn
客户端。

大多数*nixen在执行web请求时都理解环境变量“http\u proxy”

export http_proxy=http://my-proxy-server.com:8080/
svn co http://code.sixapart.com/svn/perlball/

我们应该做到这一点。大多数http库都会检查此(和其他)环境变量。

您看到常见问题解答条目了吗

。。。编辑“服务器”配置文件以指示要使用的代理。文件位置取决于您的操作系统。在Linux或Unix上,它位于目录“~/.subversion”中。在Windows上,它位于“%APPDATA%\Subversion”中。(请尝试“echo%APPDATA%”,注意这是一个隐藏目录。)

对我来说,这涉及到取消注释和设置以下行:

#http-proxy-host=my.proxy
#http-proxy-port=80
#http-proxy-username=[username]
#http-proxy-password=[password]
在命令行上:nano~/.subversion/servers

。基本上你只需要添加

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128
http-proxy-compression = no

到您的
~/.subversion/servers
文件。

在windows 7中,您可能需要编辑此文件

C:\Users\\AppData\Roaming\Subversion\servers

[global]
http-proxy-host = ip.add.re.ss
http-proxy-port = 3128

为此,有两种常见的方法:

  • ,

  • 用于在运行的单个命令行中指定相同的
    http代理-
    选项。比如说,

    svn checkout ^
    --config-option servers:global:http-proxy-host=<PROXY-HOST> ^
    --config-option servers:global:http-proxy-port=<PORT> <REPO-URL> <LWC-DIR> 
    
    svn签出^
    --配置选项服务器:全局:http代理主机=^
    --配置选项服务器:全局:http代理端口=
    

如果您使用的是Windows,则还可以。如果您需要通过组策略对象在Active Directory环境中应用代理设置,它非常方便。

在OrtoiseSVN中,您可以在设置=>网络下配置代理服务器。

这是客户端配置。“服务器”文件表示连接到服务器的设置。请参阅最新的svnbook链接(v1.7)以了解“服务器”文件配置:遗憾的是,Subversion还不支持http_代理,而且可能永远不会。请参阅“感谢提醒”上的问题。我很好奇:在Ubuntu14.10下,
http\U代理
约定似乎有效(SVN v1.8.10)。但它不在Centos 6.6(SVN v1.6.11)之下。我搜索了一下,但没有找到足够清楚的东西。知道它是否被永久修补了吗?SVN1.8几乎完全改变了http网络的运行方式。添加对http_代理的支持可能有副作用。是否有人知道是否有方法将其配置为尝试代理,并在代理不可用时使用基本网络连接?我有一个代理在工作,但当我远程时,我希望能够使用SVN,而不必打开配置文件并注释掉代理的行。对我来说,下面的Kimvais解决方案很有帮助。我不得不取消“[global]”下面的部分的注释。最初,我在第一次出现相同的行时取消了注释,但没有任何帮助。@ErikMitchell:创建两个版本的配置文件和允许您切换的脚本。阅读你的OSs文档,了解如何连接到网络发现机制,并在你的笔记本电脑注意到它的位置时执行正确的脚本。这对我来说是可行的,但密码仍然以纯文本形式存储。我不想让我的密码像这样暴露出来。有没有办法解决这个问题?在linux中,您可以使用
alias svn my proxy='svn--config option…'
来使用
svn my proxy cohttp://svn/repo/trunk
。这使您可以根据计算机当时所在的网络,轻松地在代理(
svn my proxy co
)和无代理(
svn co
)配置之间切换。您可以将
alias
命令添加到
~/.bashrc
中,以便在下次bash登录时重新创建。在我的工作网络和家庭网络之间帮助我很多!如果你能添加一个截图,那就太好了