with - github account settings




讓git使用代理服務器 (10)

我如何讓git使用代理服務器?

我需要檢查git服務器的代碼,它每次顯示“請求超時”。 我如何解決這個問題?

或者,我如何設置代理服務器?


在終端上設置git代理

如果

  • 你不想為每個你的git項目手動設置一個一個的代理
  • 總是希望為您的所有項目使用相同的代理

全球範圍內設置一次

git config --global http.proxy username:[email protected]_url:proxy_port
git config --global https.proxy username:[email protected]_url:proxy_port

如果你想為一個git項目設置代理(可能會出現一些情況,你可能不希望為某些git連接使用相同的代理或代理)

//go to project root
cd /bla_bla/project_root
//set proxy for both http and https
git config http.proxy username:[email protected]_url:proxy_port
git config https.proxy username:[email protected]_url:proxy_port

如果你想顯示當前的代理設置

git config --list 

如果你想全局刪除代理

git config --global --unset http.proxy
git config --global --unset https.proxy

如果你想刪除代理只有一個git根

//go to project root
cd /bla-bla/project_root
git config --unset http.proxy
git config --unset https.proxy

我在工作時使用Windows XP(state / gov),所以我做了我的研究,並在here找到here它,它對我很有幫助。 希望這可以幫助 :)

http_proxy環境變量

如果您使用代理服務器或防火牆,則可能需要設置http_proxy環境變量才能從命令行訪問某個網址。 示例:在perl中安裝ppm或在Linux中應用rpm,更新ubuntu

使用代理服務器的主機名或IP地址設置http_proxy變量:http_proxy = http:// [proxy.example.org]

如果代理服務器需要用戶名和密碼,請按以下格式包含它們:http_proxy = http:// [username:[email protected]]

如果代理服務器使用的端口號不是80,請包含端口號:http_proxy = http:// [username:[email protected]:8080]

Windows XP

  1. 打開控制面板,然後單擊系統圖標。
  2. 在高級選項卡上,單擊環境變量。
  3. 在系統變量面板中單擊新建。
  4. 使用適當的代理信息添加http_proxy(請參閱上面的示例)。

Linux,Solaris或HP-UX

使用特定於shell的命令(例如設置或導出)設置http_proxy環境變量。 要使此更改持久化,請將該命令添加到適當的shell的配置文件中。 例如,在bash中,向.bash_profile或.bashrc文件添加如下所示的行:

  1. http_proxy = http:// [用戶名:密碼@主機名:端口];
  2. 導出$ http_proxy

使用命令:

git config --global http.proxy http://proxyuser:[email protected]:8080
  • proxyuser更改為您的代理用戶
  • proxypwd更改為您的代理密碼
  • proxy.server.com更改為代理服務器的URL
  • 8080更改為代理服務器上配置的代理端口

如果您決定隨時重置此代理並在沒有代理的情況下工作:

使用命令:

git config --global --unset http.proxy

最後,檢查當前設置的代理:

git config --global --get http.proxy

嘗試將以下內容放入〜/ .gitconfig文件中:

[http]
    proxy = http://proxy:8080
[https]
    proxy = http://proxy:8080
[url "https://"]
    insteadOf = git://

如果您安裝並配置了tsocksproxychains ,則可以

$ tsocks git clone <you_repository>

要么

$ proxychains git clone <you_repository>

為了使它更短,我為proxychains鏈創建了符號鏈接/usr/bin/p ,所以我可以像這樣使用它

p git clone <you_repository>

我可以用它來代理任何命令,

p <cmd-need-be-proxied>

順便說一句,代理鏈不會更新很長一段時間,你可能想嘗試proxychians-ng


如果配置代理服務器的命令行方式不起作用,那麼可以編輯.gitconfig(在配置文件的根目錄中,這可能會隱藏在C:\ Documents and Settings和某些網絡驅動器中)並添加此:

[http]
    proxy = http://username:[email protected]:8080

但是,YMMV只包含命令行配置的第一步。 你可能不得不編輯系統的git配置,我不知道他們在哪裡隱藏了。


對於windows用戶:如果git configset http_proxy=不起作用, 這個答案可能有所幫助:

http://替換git倉庫的git://協議。 請注意,無論如何,您必須首先設置http_proxy


由於Windows中存在多個.gitconfig文件,因此面臨相同的問題,請按照以下步驟修復相同的問題:

第1步:打開Git BASH

第2步:查找.gitconfig ,執行以下命令:

git config --list --global --show-origin

第3步:.gitconfig復制以下內容:

[http]
    proxy = http://YOUR_PROXY_USERNAME:[email protected]:YOUR.PROXY.SERVER.PORT
    sslverify = false
[https]
    proxy = http://YOUR_PROXY_USERNAME:[email protected]:YOUR.PROXY.SERVER.PORT
    sslverify = false
[url "http://github.com/"]
    insteadOf = git://github.com/

[user]
    name = Arpit Aggarwal
    email = [email protected]

這裡是代理設置

git config --global http.proxy http://<username>:<pass>@<ip>:<port>
git config --global https.proxy http://<username>:<pass>@<ip>:<port>

這適用於我,在企業防火牆後面的Windows XP中。

除了http://code.google.com/p/msysgit/downloads/list?can=3 git v1.771之外,我不必安裝任何本地代理或任何其他軟件

$ git config --global http.proxy http://proxyuser:[email protected]:8080
$ git config --system http.sslcainfo /bin/curl-ca-bundle.crt
$ git remote add origin https://mygithubuser:[email protected]/repoUser/repoName.git
$ git push origin master

proxyuser =代理用戶我是由IT部門分配的,在我的情況下,它與我用來登錄我的PC的Active Directory用戶

proxypwd =我的代理用戶的密碼

proxy.server.com:8080 =代理服務器名稱和端口,我從控制面板,Internet選項,連接,局域網設置按鈕,代理服務器部分中的高級按鈕,使用第一個(http)行的服務器名稱和端口。

mygithubuser =我用來登錄到github.com的用戶

mygithubpwd =我的github.com用戶的密碼

repoUser =回購的用戶所有者

repoName =回購的名稱





proxy