本文详细介绍了在 Linux 环境下配置和使用网络代理的步骤。包括使用环境变量设置代理的方法、在 Git 中配置代理的常用方法以及一些调试工具。这些内容对于需要在网络受限环境下使用 Git 的用户非常实用。
export http_proxy=http://host:port/
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export rsync_proxy=$http_proxy
export all_proxy=$http_proxy
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
最常用的访问 git 的方式是 http 方式,形如:
$ git clone https://github.com/xxx/yyy/
在这种情况下,正常连接需要设置 http proxy。
$ git config --global http.proxy http://host:port
$ git config --global https.proxy https://host:port
$ git config --global -l
$ git config --global --unset http.proxy
$ git config --global --unset https.proxy
我们也常常使用 ssh 方式操作 gihub 项目,形如:
git clone git@github.com:xxx/yyy.git
这种方式使用 ssh 与 github 建立连接,无法使用 http proxy 设置,具体设置方法如下:
$ vi ~/.ssh/config
编辑如下:
Host github.com
HostName github.com
User git
ProxyCommand nc -x host:port %h %p
(注意:这里的 host:port 不是 http 代理,是 socks 代理)
测试 nc 命令是否正常
$ nc -x host:port github.com 22
测试 git 的 ssh 方式是否正常
$ ssh -T git@github.com