在公司這樣的局域網環境中,向要走網絡必須走HTTP代理出去。不能直接訪問外面的服務,因此這樣安全了些,可是也提供了不便的地方。所以須要設置一些代理才能使用。html
經常使用的代理有:git
- HTTP、HTTPS代理 許多程序支持http代理
- SOCKS代理 不是全部的程序都支持socks代理,可是經常使用的軟件都支持
github上的倉庫支持ssh、https、git三種協議的chekout(clone)操做。github
生成SSH Key
參考http://www.chenyudong.com/archives/ssh-using-private-public-key-no-password.html進行SSH密鑰的生產web
git使用http訪問
github上能夠使用https進行訪問。shell
1
|
$ git config --global http.proxy http:
//web-proxy
.oa.com:8080
|
可是這樣能夠clone了。可是若是要push代碼,那就麻煩了。每次都須要輸入密碼。vim
git使用ssh進行訪問
使用ssh協議不只能夠訪問github,還能夠訪問咱們本身的git私有倉庫,能夠參考文章經過SSH建立私有git倉庫。安全
首先,Windows用戶先下載一個mysgit客戶端,下個portable版的就行了,https://github.com/msysgit/msysgit/releases裏面有git程序。Linux用戶跳過。bash
第二步,配置ssh。Windows用戶運行mysgit中的git-bash.bat來啓動終端。編輯vim ~/.ssh/config
,將下面的內容寫入到文件中網絡
1
2
3
4
|
Host github.com *.github.com
ProxyCommand connect -H web-proxy.oa.com:8080 %h %p
#設置代理
IdentityFile ~/.
ssh
/privatekey/id_rsa
.github
User git
|
ProxyCommand
說明了設置代理,其中connect
是個程序,Windows用戶下載了mysgit,裏面有這個程序,Linux用戶可能沒有,須要安裝sudo apt-get install connect-proxy
。ssh
若是你使用corkscrew,那麼解壓縮附件,把corkscrew.exe和cygwin1.dll拷貝到mysgit的bin目錄中。附:corkscrew.zip
第三步,測試
1
2
|
ssh
-T git@github.com
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
|
轉自:http://www.chenyudong.com/archives/use-git-or-github-in-company-local-net.html