这篇文章的背景,是我在ubuntu下配置android环境以及获取android源代码时所遇到的问题,关于怎样在ubuntu/linux下android环境我在此就不多少了,可以参考android的官方网站,这里给出链接http://source.android.com/source/download.html。下面主要说一下关于在公司内网不能下载源代码的解决办法。
关于怎样设置git代理,网上有很多方法,但都是大同小异,下面介绍一下我的解决办法。
1. On Linux/ubuntu machine, please install connect-proxy
#sudo apt-get install connect-proxy
2. Create a simple shell script named socks-gw.sh
#!/bin/sh
# Filename: ~/bin/socks-gw
# This script connects to a SOCKS proxy
connect-proxy –S your.socks.proxy.com:port $@
3. Edit a simple shell script named socks-ssh.sh
#!/bin/sh
# Filename: ~/bin/socks-ssh
# This script opens an SSH connection through a SOCKS server
ssh -o ProxyCommand="${HOME}/bin/socks-gw %h %p" $@
4. Edit a simple shell script named proxy.sh
#!/bin/sh
# Filename: ~/bin/ proxy
# This script sets Git to use the SOCKS proxy
export GIT_SSH="${HOME}/bin/socks-ssh"
export GIT_PROXY_COMMAND="${HOME}/bin/socks-gw"
Note :please make sure socks-ssh and socks-gw in the right path
5. Execute proxy.sh every time before you want to use git.
说明几个问题:
1. 网上很多资料都提到了下载一个connect.c 文件,然后编译,其实那个connect.c文件就是我们安装的connect-proxy。
2. 关于connect-proxy 的参数问题,-S指用的是socks代理,-H指的是用HTTP代理,要非常注意,具体socks代理和http代理的区别,可以google
3. 如果想用HTTP代理,网上的很多方法就通用了。
reference:http://threebytesfull.com/2008/04/git-with-and-without-proxy