我有几个 github 存储库,它们在过去几个月里一直运行良好。
然而,几天前我在尝试推拉时开始遇到一个奇怪的错误
:
错误:
访问 https 时 libcurl 中不支持或禁用协议 https:... 致命:HTTP 请求失败
我没有改变任何我知道的东西,所以不确定
错误来自哪里。提前致谢。
如果您安装 Pure Data,则会出现此错误,可能是您的情况。这里描述了 Pure Data 和 git 之间的冲突。Pure Data 安装程序将它自己的 libcurl-4.dll 放在 system32 文件夹中。
即使您没有安装 Pure Data,您的库路径中可能还有另一个 libcurl-4.dll somwhere,它是在 libcurl-4.dll 之前从已安装的 git 位置加载的。
第一个答案是正确的,但在我的情况下它不是 PureData,我什至找不到哪个程序有冲突。所以我在 C 盘中搜索了 libcurl.dll 并将其从 SysWOW64 文件夹中剪切并粘贴到桌面上。查看它的详细信息,它是由谷歌上的一些“深圳 moyea 软件”引导我到我的 lil 兄弟安装后转换的 youtube。无论如何,删除文件使 git 再次工作。
也许您安装了不同的 libcurl.dll 版本,其中之一是覆盖 github 版本(支持 https)。
我不知道您的操作系统是什么,但在 Windows 中您必须更改 PATH 设置,因此它将指向正确的 libcurl.dll(在 c:\ 上进行 libcurl 搜索以了解 github 的位置)。
就我而言,是纯数据安装与来自 github 的 libcurl.dll 混淆了。
希望能帮助到你。
我有同样的行为。我不知道为什么,但我通过将 Repo orign 更改为 ssh/git 协议来解决它
如果有人无法解决libcurl
问题,您可以应用此修复程序
.git/config
你的 repo 目录下的文件url=
条目[remote "origin"]
ssh url
从 github 获取您的存储库并https url
替换config file
在 Windows (10) 中我遇到了同样的问题,在我的系统中,即使 http 也不起作用,我修复了这个为 windows 安装 OpenSSL 的问题。我从这里获得的
希望这将有助于未来的访问者以直接的方式解决问题。
通过从路径 C:\Program Files\Git\bin 中删除“git”解决了这个问题
此致。
我构建了一个包,它在我的~/.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
如果它发生在 Windows 中,请以管理员身份启动 Git 终端。
我在 macos 和 homebrew 上遇到了同样的错误。当我尝试-> git clone ... 返回时:
致命:无法访问“ https://github.com/ ....”:libcurl 中不支持或禁用协议 https
我做了:
rm '/usr/local/bin/git'
正如它在上面提到的:
brew link git
然后我再次做了一个 git clone 并且出现了一个钥匙串弹出框并点击接受。然后它工作了。