git 下载报错:fatal: unable to access 'https://github.com/shenhai/phpGrace.git/': SSL certificate problem

本文描述了在使用Git下载PHP项目phpGrace时遇到的SSL证书问题,即无法获取本地发行机构证书的错误,并提供了将https协议改为git协议的解决方案。

问题描述:当我在使用 git 下载 phpGrace 时,出现报错信息: fatal: unable to access ‘https://github.com/shenhai/phpGrace.git/’: SSL certificate problem: unable to get local issuer certificate

输入命令:

git clone https://github.com/shenhai/phpGrace.git

git 下载报以下错误:

在这里插入图片描述

解决方法:把 https 改成 git

正确命令:

git clone git://github.com/shenhai/phpGrace.git

运行结果:

在这里插入图片描述

同时桌面出现了我要下载的文件 phpGrace

在这里插入图片描述

这个错误: ``` fatal: unable to access 'https://github.com/ultralytics/yolov5.git/': SSL certificate problem: unable to get local issuer certificate ``` 表示 Git 在尝试克隆仓库时,无法验证 GitHubSSL 证书,通常是因为 **系统缺少根证书(CA 证书)** 或 **Git 使用了代理/公司网络的中间人证书**。 --- ### ✅ 解决方案汇总 #### ✅ 方法一:关闭 SSL 验证(临时解决,不推荐生产环境) > ⚠️ 警告:此方法会降低安全性,仅用于测试或受信任网络。 ```bash git config --global http.sslVerify false ``` 然后重试克隆: ```bash git clone https://github.com/ultralytics/yolov5.git ``` ✅ 成功后建议重新开启: ```bash git config --global http.sslVerify true ``` --- #### ✅ 方法二:设置 Git 使用系统的 CA 证书 有些 Git for Windows 安装包自带旧版或空的证书包。可以配置 Git 使用系统证书库。 ```bash git config --global http.sslBackend schannel ``` > 这会让 Git 在 Windows 上使用系统的安全通道(Schannel),自动信任系统已安装的证书。 然后再执行克隆命令即可。 --- #### ✅ 方法三:手动指定 CA 证书路径(高级用户) 如果你有正确的 CA 证书(如 `cacert.pem` 来自 [curl 官网](https://curl.se/ca/cacert.pem)),可如下设置: 1. 下载证书: ```bash # 浏览器访问并保存为 cacert.pem https://curl.se/ca/cacert.pem ``` 2. 告诉 Git 使用它: ```bash git config --global http.sslCAInfo "C:/path/to/cacert.pem" ``` 3. 再次尝试克隆: ```bash git clone https://github.com/ultralytics/yolov5.git ``` --- #### ✅ 方法四:检查是否在公司/学校网络中(常见原因) 很多企业网络使用 **透明代理或防火墙**,会对 HTTPS 流量进行中间人解密,导致客户端不信任证书。 🔍 检查方式: - 是否连接的是公司/校园 Wi-Fi? - 是否设置了代理? 🔧 解决办法: 1. 尝试切换到手机热点网络再运行 `git clone` 2. 如果必须用公司网络,请联系 IT 部门获取内部 CA 证书并导入系统或 Git --- #### ✅ 方法五:更新 Git 到最新版本 旧版本 Git 可能包含过期的证书列表。 👉 下载最新版 Git: https://github.com/git-for-windows/git/releases/latest 安装时选择: - “Use the OpenSSL library” 或 “Use the native Windows Secure Channel library”(推荐后者) --- ### 🧪 验证修复是否成功 运行以下命令测试与 GitHub 的连接: ```bash git ls-remote https://github.com/ultralytics/yolov5.git ``` 如果能看到一堆 commit hash 和分支信息,说明问题已解决。 --- ### 🔁 补充:使用 SSH 替代 HTTPS(可避免此类问题) 你也可以改用 SSH 协议克隆: ```bash # 先生成 SSH 密钥(如有可跳过) ssh-keygen -t ed25519 -C "your_email@example.com" # 将公钥添加到 GitHub: https://github.com/settings/keys cat ~/.ssh/id_ed25519.pub # 使用 SSH 地址克隆 git clone git@github.com:ultralytics/yolov5.git ``` SSH 不依赖浏览器级 SSL 验证,常用于规避证书问题。 --- ### ✅ 总结推荐顺序 | 方法 | 推荐度 | 适用场景 | |------|--------|----------| | `git config --global http.sslBackend schannel` | ⭐⭐⭐⭐☆ | Windows 用户首选 | | 切换网络 + 重试 | ⭐⭐⭐⭐⭐ | 快速排查企业代理问题 | | 使用 SSH 克隆 | ⭐⭐⭐⭐☆ | 长期开发推荐 | | 关闭 sslVerify | ⭐⭐☆☆☆ | 临时应急 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值