首先安装corkscrew。
sudo apt-get install corkscrew
接着,写一个proxy wrapper。
#!/bin/bash
#git proxy wrapper
# Put your own values
PROXY_IP=10.0.8.0
PROXY_PORT=8080
corkscrew ${PROXY_IP} ${PROXY_PORT} $* /path/to/proxy-auth
corkscrew的参数分别为:代理服务器的地址,代理服务器端口,所要代理的网址,认证文件。
认证文件中包含用户名和密码,形式为“user:password”。
将这个wrapper保存到文件proxy-wrapper中。
修改git的默认配置文件,通常是/home/xxx/.gitconfig。
在[core]段添加需要代理的服务器。如:
[core]
gitproxy="/home/XXX/bin/proxy-wrapper" for XXXXX1.org
gitproxy="/home/XXX/bin/proxy-wrapper" for XXXXX2.com
这样就可以了。。。
git还支持ssh和http协议。通过对本机的http代理或者ssh代理进行设置,可以通过这两个协议访问。
我的git配置文件:
[user]
name = xxx
email = xxx@gmail.com
[core]
editor = vim
gitproxy="/home/xxx/bin/proxy-wrapper" for gnome.org
gitproxy="/home/xxx/bin/proxy-wrapper" for github.com
[color]
status = auto
branch = auto
diff = auto
ui = true
pager = true
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color "status"]
added = yellow
changed = green
untracked = cyan
[alias]
co = checkout
br = branch
cm = commit
st = status