2016-07-27 38 views
9

我有兩臺連接到相同Gitlab repo的獨立PC。運行Visual Studio Update 3和使用Team Explorer和Git。在一臺PC上,我沒有任何問題更新項目,然後推送提交到遠程回購。然而,在另一臺PC上,任何操作(推送或讀取或同步)都會失敗,出現Unsupported URL protocol錯誤,儘管最初我設法克隆了回購。我懷疑它不喜歡連接字符串中的某些內容,因爲我可以使用命令行git(版本2.9.2非常近期)提交和同步該repo。這個錯誤的原因是什麼,是否有解決方法?git提供程序錯誤中的不受支持的URL協議

+1

由於Git bash在其他計算機上工作,所以一種解決方法是隻使用bash。您可以嘗試比較兩臺計算機之間的Gitlab連接設置。 –

+0

是的,這是我正在使用的當前解決方法。有沒有辦法檢查某種連接日誌或連接字符串,因爲它是在抱怨URL。我嘗試了URL重寫,但沒有奏效。 – s952163

+2

比較來自兩個Gitlabs的設置。一個在工作,所以你可以用它作爲參考。 –

回答

19

我已經檢查了兩個本地回購之間的差異,以及對git remote -v PC1給出:

起源https://gitlab.com/ ...

而在PC2:

出身的git @ gitlab.com:...

經過進一步調查,似乎VS2015 Update3使用的舊版本LibGit2缺少SSH支持。第一個回購是原始的,在VS中創建,第二個回購是通過命令行進行克隆的,因此是SSH連接字符串。

的解決方法是在.git/config連接字符串更改爲

URL = https://gitlab.com/ ...

如果一個絕對需要SSH比它可以重新編譯gitlib2,或者使用命令行混帳工程。在VS2015中使用其他Git源提供程序也許是可以的,但是我沒有測試過它。 (例如Git Source Control Provider 2015

相關問題