2015-05-27 80 views
194

我複製並從網頁粘貼的混帳克隆命令:https://fedorahosted.org/ibus-typing-booster/混帳:致命的:我不處理協議「HTTP」

我得到這個:

[email protected]> git clone ​​http://git.fedorahosted.org/git/ibus-typing-booster.git 

Cloning into 'ibus-typing-booster'... 
fatal: I don't handle protocol '​​http' 
+0

您也可以從存儲庫視圖[此處](https://git.fedorahosted.org/git/ibus-typing-booster.git)底部獲取(正確)網址。 – poke

+0

@檢查網址是否正確。我不明白你想告訴我什麼。 – guettli

+0

您可以從那裏複製/粘貼。這是由存儲庫查看器生成的URL,而不是某些wiki中手動插入的URL,因此它可能更正確。 – poke

回答

413

我複製並粘貼全行git clone http://...

git clonehttp://...之間的字符看起來像一個空格,但它是一個特殊Unicode字符

刪除此字符後,輸入一個真實的空間,它的工作!

我看到兩種方法來揭示ASCII VS特殊的Unicode字符

WAY1:Python的

這裏是真正的行:

vi t.txt # copy+paste the line 
python 
open('t.txt').read() 
git clone \xe2\x80\x8b\xe2\x80\x8bhttp://... 

Way2:

vi t.txt # copy+paste the line 
LESSCHARSET=ascii less vi.txt 

如果它看起來像git clone <E2><80><8B><E2><80><8B>http://,那麼你複製+粘貼的特殊Unicode字符秒。

+6

很好找!原因可能是那裏的那個偶像。 – poke

+4

我花了3個小時尋找SSH/keys/connection /向Gitlab提交密鑰的問題,只是因爲我有一個公鑰被拒絕的消息。 :/然後我切換到https,並得到了「不處理」的消息,這給我提供了。所有這些麻煩都歸功於Unicode空間看起來相似。很多非常感謝你@guettli和Google/SO組合讓我在這裏。 –

+3

謝謝。我看到了兩種解決方法:git可以去掉這些特殊字符或shell(我使用bash)。我浪費了時間,浪費了時間......如果你總結這一點,我想這可能是人類多年的浪費......浪費了。這是可悲的。 – guettli

9

摘要:鍵入url而不是將其粘貼到命令行中。它爲我工作。

+1

以上摘要答案:克隆與http://之間的字符看起來像一個空格,但它是一個特殊的Unicode字符!刪除這個空字符並輸入一個真實的空間後,它就起作用了! t.txt的內容僅適用於對「爲什麼」感興趣的人,而不僅僅是「作品」中的人。 – guettli

3

你也可以用文本編輯器:

  • 在文本編輯器
  • 複製剛從文本編輯器中粘貼URL中的URL粘貼
  • 在命令行中貼吧
+2

我猜backspace簡單命中也有幫助 – guettli

37

使用退格刪除git cloneurl之間的任何內容,然後使用空格鍵在它們之間添加乾淨的空間。就那麼簡單。

+0

簡單而可怕的方式 –

+0

@KathiravanNatarajan我很高興它很有用。 –

6

我用雙引號的網址,它的工作。所以像

git clone "​​http://git.fedorahosted.org/git/ibus-typing-booster.git" 

工程..單引號不幫助。它必須是雙引號。

+0

它的工作原理即使我改變https爲http。 – shannon

1

同樣的問題發生在我身上的時候,我剛剛將url複製到剪貼板中,然後將其粘貼到終端中。重寫整行沒有複製過去選項解決了我的問題。

+0

你爲什麼寫這個答案?你認爲目前的答案是什麼缺失? – guettli

+0

嗨guettli,你確定在所有可能的情況下只重寫空格字符能夠解決上述問題嗎?是否有可能有東西冗餘/不正確的不是在白色空間,但也包含在URL文本中的符號? – Arsen

+0

當然特殊的unicode字符可以在任何地方。我添加了第二種方法來「解釋ascii vs特殊的unicode字符」到我的答案。 – guettli

1

請不要從剪貼板複製。 只需從瀏覽器的位置/地址欄複製網址即可。 enter image description here

+0

該網址不在我的地址欄中。這是維基中的純文本。 – guettli

+0

no ..在git bash中粘貼URL。在git clone {你的repo URL}。之後取消,它在clone和你的repo URL之間需要額外的字符。您可以通過刪除或點擊退格前檢查您的回購網址 –

0

我試圖通過git explorer's Clone選項。它給了我這個問題。

我把它粘貼在Git bash CLI上,它工作正常。

1

clonning如下:

git clone https://github.com/zendframework/ZendSkeletonApplication.git 

給出了錯誤:

Cloning into 'ZendSkeletonApplication'... 
fatal: I don't handle protocol 'https' 

它改爲:

git clone https://github.com/zendframework/ZendSkeletonApplication 

作品完美或者你可以混帳克隆的URL。 我使用操作系統的Windows 10和gitbash。

+0

這仍然錯誤爲我 – Callat

+0

請分享您的git命令&錯誤。 –

+0

它做了完全相同的錯誤。接受的答案爲我工作。所以它解決了 – Callat

1

請檢查您粘貼的URL,克隆後需要額外的h。

因此,無論您是否粘貼完整的git克隆http://....git或只是刪除git存儲庫URL之前的其他字母。

+0

你是什麼意思與「額外的h」? – guettli