给Git或者APT设置代理

来源:互联网 发布:软件测试工程师培训班 编辑:程序博客网 时间:2024/05/20 00:51

[转]http://yansu.org/2013/05/20/set-proxy-for-git-or-apt.html 和 http://my.oschina.net/tsl0922/blog/134755

最近使用git从github上clone代码,总是失败,奔溃了快。还有ubuntu连apt-get update都执行不了,有的时候都装不了git,就快骂娘了。可惜在这样一个环境下,只能靠自己搞定了,设置代理是比较好的方式

安装goagent

这个教程网上很多,放狗一搜即可。不过网上goagent教程里讲的大部分是给浏览器用的。其实goagent是监听了本地的8087端口,其实任何程序都可以利用这个端口,只要设置好即可。

linux系统下的设置方法见:http://blog.csdn.net/dgq227/article/details/12004685

设置git代理

设置代理服务器有很多种方式,我使用的是设置环境变量的方式:

  1. export https_proxy="127.0.0.1:8087" 或 export https_proxy="http://localhost:8087"
  2. export http_proxy="127.0.0.1:8087"export http_proxy="http://localhost:8087"
这样git clone就是走代理了,其实这个设置完以后apt-get的操作也是通过代理的了

不过,http方式正常,但是https方式git就会提示CA证书不受信任了,可以通过以下方式把goagent的CA加到系统信任列表里:

  1. sudo cp path/to/goagent/local/CA.crt /usr/share/ca-certificates/goagent.crt
  2. sudo chmod a+r /usr/share/ca-certificates/goagent.crt
  3. sudo dpkg-reconfigure ca-certificates
    最后一个命令会有一个图形界面,在里面勾选goagent的CA就可以了。

或直接禁用sslverify验证:

  1. git config --global http.sslVerify fals

设置apt-get代理

上面的方法也可以直接使apt代理,如果不想设置环境变量,可以使用下面命令

  1. sudo apt-get -o Acquire::http::proxy="http://127.0.0.1:8087/" update


注:Git 目前支持的三种协议 git://ssh://http://,其代理配置各不相同:core.gitproxy 用于git:// 协议,http.proxy 用于http:// 协议,ssh:// 协议的代理需要配置 ssh 的ProxyCommand 参数。

原创粉丝点击