背景
国内使用下载github的资源视网络环境情况可能会非常慢,近几年波及的范围越来越广,在不使用科学上网的情况下甚至打不开
github.com即便使用科学上网,对于在控制台的
git clone一类操作也默认不会走代理,速度依然很慢但是git本身支持配置代理规则,也即本文记录的内容
http协议代理
前置条件
机器上安装了git
有一个科学上网结点,且在机器上打开(配置了系统代理),假定代理端口为7890
配置
指令:
git config --global http.proxy socks5://127.0.0.1:7890上面的命令其实是修改了
.gitconfig配置[http] proxy = socks5://127.0.0.1:7890上面只配置了http代理,这就足够了,不需要配置https代理
这个http代理仅仅针对
git clone https://的方式生效
ssh协议代理
git clone git@github.com:xxx.git这种方式使用的是ssh协议
前置条件
有一台能快速访问github的服务器(海外服务器),能够ssh登录,假定IP为1.2.3.4
在代理服务器上安装好nc,
yum install nc,假定安装位置为/usr/bin/nc
配置
修改ssh的配置文件
~\.ssh\config,添加内容host github.com #LogLevel DEBUG3 ProxyCommand ssh -l root 1.2.3.4 exec /usr/bin/nc %h %p此时对
git clone git@github.com:xxx.git一类指令也能适用网络加速