各種SCM工具下使用http代理下載源碼(git svn)

來源:互聯網
上載者:User

轉載自:

http://www.linuxeden.com/html/develop/20090723/66951.html

 http://mysuperbaby.iteye.com/blog/935741

 

經常有使用SCM下載源碼的必要,尤其是軟體開發人員。但偶們的網路環境經常逼得我們不得不使用代理,或者是因為速度,或者是因為直連根本就不通。而且源碼通常是零零碎碎的幾千幾萬個小檔案,不像一般的軟體是單個的檔案,一個下載工具即可搞定。

1,CVS
CVS使用代理非常麻煩,似乎不能用http代理(如果偶錯了請提醒),而socks代理相當難找。好在這個東東已經慢慢變成了昨日黃花,我們不討論它。

2,SVN
SVN比較方便,編輯~/.subversion/servers檔案即可:
[global]
http-proxy-host = <代理的ip或網域名稱>
http-proxy-port = <代理連接埠>
http-proxy-username = <使用者名稱,如果需要的話>
http-proxy-password = <密碼,如果需要的話>

3,HG
HG更簡單,因為它使用的是http協議,一個命令解決:
export http_proxy=http://<使用者名稱>:<密碼>@<ip>:<連接埠>

4,Git
Git可以使用兩種協議,git協議和http,如果是後者,那麼辦法跟HG一樣,如果是git,比較麻煩,但也不是不可解決:
先去下載一個協議轉換小工具:http://www.meadowy.org/~gotoh/ssh/connect.c
編譯之:gcc -o connect connect.c
將產生的connect放到可執行檔路徑中,如/usr/bin

然後建立一個使用代理的指令碼,假設是http-proxy-gw,注意加上可執行屬性,內容如下:
#!/bin/sh
# Filename: ~/bin/http-proxy-gw
# This script connects to an HTTP proxy using connect.c
connect -H http://yourproxyaddress:proxyport $@

最後,配置git:
git config --global core.gitproxy "http-proxy-gw for xxx.yyy"
後面的xxx.yyy是網域名稱尾碼,比如,下載linux源碼就可以是設定為kernel.org

 

2012 7.25添加:

以上方法,我只實驗了在公司內二級代理的情況下git的下載,it works fine

1、編譯出 connect

2、寫一個指令碼 gitproxy.sh(記得這兩個檔案都要 chmod+x許可權)

gitproxy.sh內容如下

 

#!/bin/sh

# Filename: ~/bin/socks-gw

# This script connects to a SOCKS proxy using connect.c

/home/<youraccount>/bin/connect -Hproxyserver:port$@

 

解釋:

<youraccount>就是 你的賬戶

proxyserver:port就是填寫你的代理IP及連接埠

 

3、將這兩個檔案拷入/home/<youraccount>/bin下,如果你的賬戶更目錄下沒喲的話那就建立一個

 

4、配置GIT參數,制定使用代理指令碼

git config --global core.gitproxy "${HOME}/bin/gitproxy.sh"

 

5、git chone *** 大功告成

 

本人補充20120801 GIT 配置代理問題

今天遇到一個新的情況,有台伺服器剛裝的ubuntu,將我之前編譯產生的connect執行檔案以及執行指令碼直接拷貝過去,每次運行都報錯

syntax error

後來將connect.c 拷貝過來GCC重新編譯了一下,問題解決了,該問題後來知道原來我之前的是64bit的ubuntu,而這台是32bit的系統估計編譯出來的檔案不相容

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.