2016-08-17 39 views
0

我在GIT和GitHub中很新,我想我有一些配置問題。爲什麼我不能在代理下克隆這個GitHub存儲庫?

昨天我已經正確configurd我的本地GIT和我的GitHub賬戶之間的SSH連接。它工作正常。

今天我去了我的下一個代理辦公室,使用相同的筆記本電腦,我嘗試克隆遠程存儲庫(在我的GitHub帳戶),以我的本地庫。

代理正確設置好的我GIT,事實上這樣做的:

$ git config --global http.proxy 
http://XX.YY.ZZ.AAA:3228 

這就是我用來在互聯網上,我已經內置於瀏覽器的設置導航相同的代理服務器。

的問題是,當我嘗試克隆我在GitHub庫到我的本地庫我得到這個錯誤信息:如果我連接到互聯網使用我的智能手機連接

$ git clone [email protected]:AndreaNobili/recipes.git 
Cloning into 'recipes'... 
ssh: connect to host github.com port 22: Connection timed out 
fatal: Could not read from remote repository. 

(即不屬於代理)它工作正常。

爲什麼?我錯過了什麼?

TNX

+1

端口22在代理服務器上最有可能關閉。嘗試通過https進行克隆 - (https://github.com/AndreaNobili/recipes.git)。這應該會導致端口443應該在Web代理上打開 – sestus

+0

嘗試設置'http_proxy'環境變量。如果您已經設置了'HTTP_PROXY'環境變量,請嘗試使用小寫版本。 –

+0

@ShubhamVasaikar我有http_proxy設置,我在Windows下,所以我認爲這不區分大小寫 – AndreaNobili

回答

1

儘管您已配置HTTP代理,你有沒有指示的Git使用http - 您指定它應該使用ssh連接:

$ git clone [email protected]:AndreaNobili/recipes.git 

事實上,你的錯誤信息是ssh超時:

ssh: connect to host github.com port 22: Connection timed out 

發生這種情況是因爲您的防火牆阻止了您的連接。相反,請將存儲庫指定爲HTTP URL,並且Git將使用您配置的公司代理:

$ git clone https://github.com/AndreaNobili/recipes.git 
0

看起來你需要將環境變量設置爲http_proxycurllibcurl似乎並沒有認識到的大寫變量HTTP_PROXY

This link闡述更多的是:

變量 「HTTP_PROXY」,使用所有瓶蓋,不再允許/理解 (因爲實際上7.7.2)。

原因如下: 當CGI腳本從Web服務器內部執行時,通常會在執行腳本前設置 環境變量。在 傳入請求頭的激活所述腳本轉換爲:命名 HTTP_ [標題]變量。

所以,如果有人寫道,反過來用捲曲的CGI腳本,你可以 實際上欺騙捲曲通過傳遞一個使用你選擇的HTTP代理「代理: [內容十分重要]」標頭。

HTTP_PROXY」,使用較低的情況下,在另一方面是完全由 捲曲理解。

+0

如果您看到我的原始文章,我已正確設置了http_proxy。你的意思是它必須設置爲捲曲? – AndreaNobili

+0

不,你不需要設置任何「捲曲」。 'curl'是一個URL傳輸庫。但是,既然你使用的是Windows,那麼環境變量的情況就不重要了。 –

相關問題