SVN使用代理并不是设置完了就完事了,因为好多HTTP代理不支持svn操作,需要特殊处理,比如签出googlecode的错误:
svn checkout --force http://gyp.googlecode.com/svn/trunk build/gyp --revision 1501 svn: Server sent unexpected return value (501 Method not implemented) in response to PROPFIND request for '/svn/trunk' make: *** [dependencies] Error 1
本文用privoxy-3.0.23实现,老版本可能不支持svn操作(从哪个版本开始支持官网有说明自行搜索),privoxy后面挂一个socks代理即可。
ssh -D [本地IP或省略]:[本地端口] [登陆服务器的用户名@服务器IP] -p [服务器ssh服务端口(默认22)]
privoxy
listen-address :8118 forward-socks5 / 127.0.0.1:8000 .
vi ~/.subversion/servers
http-proxy-host = 127.0.0.1 http-proxy-port = 8118 # http-proxy-username = defaultusername # http-proxy-password = defaultpassword http-compression = yes
参考: