GitHub Enterprise仓库克隆失败:schannel证书链信任错误求助
解决GitHub Enterprise克隆时的CERT_TRUST_IS_PARTIAL_CHAIN错误
嘿,这个证书链不完整的错误我之前帮不少开发者搞定过,核心问题基本都是你的系统没信任GitHub Enterprise服务器的根证书或中间证书,导致Git通过Schannel(Windows默认的SSL库)验证时失败了。咱们一步步来修复:
导入GitHub Enterprise的根CA证书
首先得联系你的GitHub Enterprise管理员,拿到服务器的根CA证书(一般是.crt格式的文件)。然后根据你的操作系统操作:- Windows:双击证书文件,选择「安装证书」,选择「本地计算机」(如果没有管理员权限就选当前用户),接着选「将所有证书放入下列存储」,点击「浏览」后选择「受信任的根证书颁发机构」,完成导入后重启Git终端再尝试克隆。
- macOS:打开「钥匙串访问」应用,把证书文件拖到左侧的「登录」或「系统」钥匙串里。找到导入的证书后右键选择「显示简介」,在「信任」选项卡中,把「使用此证书时」设置为「始终信任」,输入系统密码确认后重启终端。
临时关闭Git的SSL验证(仅限紧急场景,不推荐长期使用)
如果只是需要临时克隆代码,可以先禁用Git的SSL证书检查,执行这条命令:git config --global http.sslVerify false注意:这个操作会降低安全性,完成克隆或提交后一定要改回来:
git config --global http.sslVerify true为Git指定特定证书文件
不想全局禁用验证的话,可以给你的GitHub Enterprise服务器单独配置证书路径:git config --global http.https://SERVERURLHERE/.sslCAInfo /full/path/to/your/root-cert.crt把
SERVERURLHERE换成你的GitHub Enterprise实际服务器地址,/full/path/to/your/root-cert.crt换成证书文件的完整路径。检查并补充缺失的中间证书
有时候根证书没问题,但中间证书缺失也会触发这个错误。你可以用浏览器访问GitHub Enterprise服务器,点击地址栏的锁图标,查看证书详情里的证书链,把缺失的中间证书导出,然后按照导入根证书的步骤添加到系统证书存储中。
内容的提问来源于stack exchange,提问作者Ryan Vickramasinghe
相关产品推荐
相关产品推荐

