2016-07-27 27 views
9

同じGitlabリポジトリに接続する2つの別個のPCがあります。両方ともVisual Studio Update 3を実行し、GitでTeam Explorerを使用します。 1台のPC上では、私はプロジェクトを更新してコミットをリモートのリポジトリにプッシュすることに問題はありません。しかし、他のPCでは、当初は私はリポジトリをクローンすることができましたが、いずれの操作(プッシュまたはフェッチまたは同期)もUnsupported URL protocolエラーで失敗します。私はコマンドラインgit(かなり最近のバージョン2.9.2)を使ってリポジトリをコミットして同期させることができるので、接続文字列に何か気に入らないと思う。このエラーの原因は何ですか?回避策がありますか?gitプロバイダエラーでサポートされていないURLプロトコル

+1

Git bashは他のコンピュータで動作しているので、回避策の1つはbashを使うことです。 2台のコンピュータ間のGitlab接続設定を比較することができます。 –

+0

はい、それは私が使用している現在の回避策です。何らかの種類の接続ログや接続文字列をチェックする方法はありますか?それはURLについて不平を言っているからです。私はURLの書き換えを試みたが、うまくいかなかった。 – s952163

+2

両方のGitlabsの設定を比較してください。 1つは動作しているので、これを参照として使用できます。 –

答えて

19

私は2つのローカルリポジトリの違いをチェックして、PC1上のgit remote -vが与える:PC2上

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

中:

原点gitの@ gitlab.com:...

詳しい調査の結果、VS2015 Update3で使用されている旧バージョンのLibGit2はSSHサポートが不足しているようです。最初のレポは元のものでVSで作成され、2番目のレポはコマンドラインでクローンされたので、SSH接続文字列です。

回避策は1つが絶対にgitlib2を再コンパイルすることが可能であるよりも、SSHを必要とする、またはコマンドラインを使用している場合

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

.git/configでの接続文字列を変更することですgitは動作します。 VS2015で他のGitソースプロバイダを使用することは可能かもしれませんが、私はそれをテストしていません。 (例えばGit Source Control Provider 2015