10

我有几个 github 存储库,它们在过去几个月里一直运行良好。
然而,几天前我在尝试推拉时开始遇到一个奇怪的错误

错误:
访问 https 时 libcurl 中不支持或禁用协议 https:... 致命:HTTP 请求失败

我没有改变任何我知道的东西,所以不确定
错误来自哪里。提前致谢。

4

10 回答 10

9

如果您安装 Pure Data,则会出现此错误,可能是您的情况。这里描述了 Pure Data 和 git 之间的冲突。Pure Data 安装程序将它自己的 libcurl-4.dll 放在 system32 文件夹中。

即使您没有安装 Pure Data,您的库路径中可能还有另一个 libcurl-4.dll somwhere,它是在 libcurl-4.dll 之前从已安装的 git 位置加载的。

于 2013-08-21T08:09:02.887 回答
4

第一个答案是正确的,但在我的情况下它不是 PureData,我什至找不到哪个程序有冲突。所以我在 C 盘中搜索了 libcurl.dll 并将其从 SysWOW64 文件夹中剪切并粘贴到桌面上。查看它的详细信息,它是由谷歌上的一些“深圳 moyea 软件”引导我到我的 lil 兄弟安装后转换的 youtube。无论如何,删除文件使 git 再次工作。

于 2014-11-23T14:59:11.297 回答
1

也许您安装了不同的 libcurl.dll 版本,其中之一是覆盖 github 版本(支持 https)。

我不知道您的操作系统是什么,但在 Windows 中您必须更改 PATH 设置,因此它将指向正确的 libcurl.dll(在 c:\ 上进行 libcurl 搜索以了解 github 的位置)。

就我而言,是纯数据安装与来自 github 的 libcurl.dll 混淆了。

希望能帮助到你。

于 2013-05-10T11:48:54.910 回答
0

我有同样的行为。我不知道为什么,但我通过将 Repo orign 更改为 ssh/git 协议来解决它

于 2013-06-20T18:10:10.453 回答
0

如果有人无法解决libcurl问题,您可以应用此修复程序

  1. 编辑.git/config你的 repo 目录下的文件
  2. 在部分下查找url=条目[remote "origin"]
  3. ssh url从 github 获取您的存储库并https url替换config file
  4. 保存配置文件并关闭它。现在你可以使用 git。
于 2014-09-08T21:27:23.100 回答
0

在 Windows (10) 中我遇到了同样的问题,在我的系统中,即使 http 也不起作用,我修复了这个为 windows 安装 OpenSSL 的问题。我从这里获得的

希望这将有助于未来的访问者以直接的方式解决问题。

于 2019-01-12T08:49:32.863 回答
0

通过从路径 C:\Program Files\Git\bin 中删除“git”解决了这个问题

此致。

于 2019-01-05T20:09:00.693 回答
0

也许你搞砸了 LD_LIBRARY_PATH

我构建了一个包,它在我的~/.bash_profile. 这打破了我的 git;由于 gits 对 curl 的依赖,我得到了上述 libcurl 错误:

[user@host folder]$ git push
fatal: unable to access 'https://x-access-token:67bada156da713b46d4d64fe37309cb9c5856717@github.com/project/repository.git/': Protocol https not supported or disabled in libcurl

解决方案是在使用别名运行 git 时修复 LD_LIBRARY_PATH:

# Fix problem with libcurl
alias git="LD_LIBRARY_PATH=/usr/local/lib git"

export LD_LIBRARY_PATH=/opt/project/lib

接着...

[user@host folder]$ source ~/.bash_profile
[user@host folder]$ git push
Counting objects: 24, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (13/13), 1.57 KiB | 0 bytes/s, done.
Total 13 (delta 5), reused 0 (delta 0)
remote: Resolving deltas: 100% (5/5), completed with 5 local objects.
To https://x-access-token:67bada156da713b46d4d64fe37309cb9c5856717@github.com/project/repository.git/
   676a842..eb37cb9  enhance-0052 -> enhance-0052
于 2019-07-28T00:41:27.630 回答
0

如果它发生在 Windows 中,请以管理员身份启动 Git 终端。

于 2020-12-14T10:43:28.000 回答
0

我在 macos 和 homebrew 上遇到了同样的错误。当我尝试-> git clone ... 返回时:

致命:无法访问“ https://github.com/ ....”:libcurl 中不支持或禁用协议 https

我做了:

rm '/usr/local/bin/git'

正如它在上面提到的:

brew link git    

然后我再次做了一个 git clone 并且出现了一个钥匙串弹出框并点击接受。然后它工作了。

于 2017-01-27T20:49:04.323 回答