【问题标题】:Unsupported URL protocol in git provider errorgit 提供程序错误中不支持的 URL 协议
【发布时间】:2016-07-27 01:08:42
【问题描述】:

我有两台单独的 PC 连接到同一个 Gitlab 存储库。运行 Visual Studio Update 3 和使用带有 Git 的团队资源管理器。在一台 PC 上,我可以毫无问题地更新项目,然后将提交推送到远程仓库。然而,在另一台 PC 上,任何操作(推送、获取或同步)都将失败并出现 Unsupported URL protocol 错误,尽管最初我设法克隆了 repo。我怀疑它不喜欢连接字符串中的某些内容,因为我可以使用命令行 git 提交和同步 repo(版本 2.9.2 相当新)。此错误的原因是什么,是否有解决方法?

【问题讨论】:

  • 由于 Git bash 在另一台计算机上运行,​​一种解决方法是只使用 bash。您可以尝试比较两台计算机之间的 Gitlab 连接设置。
  • 是的,这就是我正在使用的当前解决方法。有没有办法检查某种连接日志或连接字符串,因为它抱怨 URL。我尝试了 URL 重写,但没有成功。
  • 比较两个 Gitlab 的设置。一个正在工作,因此您可以将其用作参考。

标签: git github visual-studio-2015 gitlab


【解决方案1】:

我检查了两个本地仓库之间的区别,PC1 上的git remote -v 给出:

来源https://gitlab.com/ ...

在 PC2 上时:

来源 git@gitlab.com: ...

经过进一步调查,VS2015 Update3 使用的旧版本LibGit2 似乎缺少 SSH 支持。第一个 repo 是原始的并在 VS 中创建,第二个 repo 是通过命令行克隆的,因此是 SSH 连接字符串。

解决方法是将.git/config中的连接字符串改为

网址 = https://gitlab.com/ ...

如果绝对需要 SSH,则可以重新编译 gitlib2,或者使用命令行 git。在 VS2015 中可能可以使用其他 Git 源提供程序,但是我还没有测试过。 (例如Git Source Control Provider 2015

【讨论】:

    猜你喜欢
    • 2018-12-02
    • 2016-12-09
    • 2019-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-22
    相关资源
    最近更新 更多