github.com,作為程序員的代碼倉庫,我們經常會用到。但有時候我們不能直接通過網絡鏈接它,只能通過代理。
這裡我有一台代理服務器,起初我以為在終端設置了代理環境就行了,其設置為在你的~/.bashrc裡增加以下幾行:
設置好以後,使用以下命令使其啟動
source ~/.bashrc
然後測試wget是沒有問題的,如下:
但使用git clone就不行
git clone git@github.com:aborn/ulitcs.git
通過這兩篇文章知道了原因:在windows上通過代理訪問github.com 和 Using git over proxy
配製過程分為以下幾步:
1. 安裝socat,在ubuntu下使用以下命令安裝
sudo apt-get install socat
2. 編輯一個腳本文件,名字為git-proxy ,內容如下
3. 將git-proxy放到一個目錄下,如我將它放到/home/lisp/local/bin,並將該目錄加入到PATH
cp git-proxy /home/lisp/local/bin/
將該目錄加入到PATH,加入以下內容到~/.bashrc,然後souce ~/.bashrcexport PATH=$PATH:/home/lisp/local/bin
source ~/.bashrc
gitproxy = git-proxy
我.gitconfig文件內容如下:
5.下載轉換協議文件connect.c,下載地址點擊
只要下載connect.c文件即可,然後編譯
gcc -o connect connect.c
將編譯後的文件connect也拷貝到/home/lisp/local/bin下
6. 修改~/.ssh/config,加入以下行
ProxyCommand /home/lisp/local/bin/connect -H proxy-server:3128 %h %p
我的~/.ssh/config文件內容如下:
注意這裡的connect文件目錄與第5步放置的目錄一致。
以上步驟完成後,就行了,如下截圖:
git clone git@github.com:aborn/ulitcs.git
git push
注意:
1. 上面的proxy-server根據你的代理,設置為替換為你的代理服務器的ip地址或者域名
2.上面的connect.c文件、編譯好的connect文件和git-proxy文件,也可以從這裡下載connect.tar.gz 和git-proxy
3. 我的操作系統為Ubuntu 14.04LTS
沒有留言:
張貼留言