Git通过代理连接外网


很多时候内网只能访问内部的git server,无法访问外部的(如github或是各种开源项目)。下面以Ubuntu为例介绍如何通过proxy访问git库。


1. 安装connect-proxy:

$apt-get install connect-proxy

2. 写脚本gitproxy.sh:

#!/bin/sh

connect -S proxy.company.com:1234 $@

当然实际中还可以加上一些高级过滤功能,比如内网git不用代理,只外网需要通过代理等等。

然后加执行权限,并拷贝到PATH路径下:

$chmod 775 gitproxy.sh

#cp gitproxy.sh /usr/bin/

3. 最后将该脚本写进git配置:


$ git config --global core.gitproxy gitproxy.sh

现在应该就可以了,试一下效果:

www.bkjia.com@www.bkjia.com:~/tmp$ git clone git://git.seabios.org/seabios.git seabios
Initialized empty Git repository in /home/jzj/tmp/seabios/.git/
remote: Counting objects: 8801, done.
remote: Compressing objects: 100% (3465/3465), done.
remote: Total 8801 (delta 6994), reused 6639 (delta 5330)
Receiving objects: 100% (8801/8801), 2.02 MiB | 77 KiB/s, done.
Resolving deltas: 100% (6994/6994), done.

相关内容