头图

关于使用 git 命令行时遇到的错误消息 unable to get local issuer certificate

unable to get local issuer certificate 是开发人员在尝试使用特定于 Windows 的命令行工具 Git Bash 推送、拉取或克隆 git 存储库时面临的常见问题。

当 Git 服务器的 SSL 证书是自签名(self-signed)时,经常会出现无法获取本地颁发者证书的错误。 自签名证书的问题是与它们关联的私钥不能被撤销,这使其成为一个安全漏洞。

另一种可能的原因是由于系统上的 Git 配置不正确,或者在 Visual Studio Code (VS Code) 终端中使用 git 时的配置不正确。

unable to get local issuer certificate 是由本地计算机上的 SSL 证书配置错误引起的。 在推送、拉取或克隆时,Git 无法验证本地的 SSL 证书,从而导致错误。

有效的 HTTPS 握手要求客户端和服务器共同努力以便创建安全连接,从而允许本地计算机与托管源代码的位置之间进行安全通信。 当本地计算机的 SSL 证书无法验证时,Git 无法完成与托管存储库的服务器的 HTTPS 握手。

当 VS Code 中出现 无法获取本地颁发者证书错误时,通常是因为 Visual Studio 找不到 SSL 证书。 这可能是由于本地计算机上的路径配置错误。

当自签名证书导致出现 ssl 证书问题时,解决方法是将证书添加到受信任的证书存储(trusted certificate store)中。

默认情况下,受信任的证书存储位于 Git Bash 的以下目录中:

C:\Program Files\Git\mingw64\ssl\certs\

在我电脑上的例子:

打开位于上述目录中的文件 ca-bundle.crt,然后将 Git SSL 证书复制并粘贴到文件末尾。 完成后,保存文件并运行 git pull、push 或 clone 命令。

出于安全考虑,不建议禁用 SSL 证书验证。

您可以使用以下命令在 Git 中本地禁用 SSL 证书验证:

git -c http.sslVerify=false clone [URL]

或者是进行全局禁用:

git config --global http.sslVerify false

重新启用:

git config --global http.sslVerify true

Jerry Wang的SAP技术专栏
SAP成都研究院开发专家,SAP社区导师,SAP中国技术大使
884 声望
1.6k 粉丝
0 条评论
推荐阅读
Spartacus i18n 配置相关代码的工作原理
具体而言,这段代码中,我们首先导入了 translations 和 translationChunksConfig 变量,它们是Spartacus应用程序中用于存储翻译相关信息的变量。

JerryWang_汪子熙阅读 289

封面图
openKylin 0.9.5版本正式发布,加速国产操作系统自主创新进程!
2023年1月12日,中国桌面操作系统根社区openKylin(开放麒麟)正式发布openKylin 0.9.5操作系统版本。此版本充分适应5G时代需求,打通平板,PC等设备,实现多端融合,弥补了国产操作系统的短板,有效推动国产操作...

openKylin6阅读 8k

封面图
Git的一些最基础操作-以项目为例
在自己刚接触git的时候,心里一直有一个疑问,那就是什么是git?git能用来干什么呢?git是一个分布式的版本控制系统。 那么现在你就知道了,git肯定是用来管理代码版本的,而且还是分布式的。

淼淼真人2阅读 3.6k

git 多用户配置(多用户 & 公司/个人)
多用户配置公司和github,经常会遇到要多用户使用git的情况,以下为配置信息,以下拿xiaoxuete1 & xiaofute2举例设置ssh-key {代码...} 会提示存储的文件名,输入如果需要push时确认的密码,可在该步骤输入.pub文件...

小夫特1阅读 7.5k

工作中常用的git命令
在这类系统中,像 Git,Mercurial,Bazaar 以及 Darcs 等,客户端并不只提取最新版本的文件快照,而是把原始的代码仓库完整地镜像下来。这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像...

vipbic4阅读 950

封面图
SegmentFault 思否技术周刊 Vol.78 — Git 必看技术补给
Git 的诞生是一个非常有趣的故事。1991年 Linus 开源了 Linux 内核,无数 Linux 爱好者在世界各地为 Linux 编写代码,那么问题来了,这些代码该如何管理呢?起初 Linus 使用 BitKeeper(BitMover 公司的版本控制软...

Beverly3阅读 2.1k

封面图
VSCode 格式化哲学
当我们说「团队需要统一的代码样式」,大家都没有什么反对意见;但当问题变为「统一成什么样式?」时,大家的声音就嘈杂了起来。人们对于特定的编码方式很抵触,没有人喜欢花时间这样写代码,没人愿意接受别人的...

Cheri2阅读 848

884 声望
1.6k 粉丝
宣传栏