已设置Git全局SSL证书,但克隆仍用系统配置的解决方法咨询
解决Git优先使用全局SSL证书配置的问题
1. 确认全局配置是否生效
先执行以下命令验证全局配置是否正确写入:
git config --global --get http.sslCAInfo
如果输出不是你设置的证书路径,重新执行全局配置命令,注意Windows路径用正斜杠或双反斜杠避免转义问题:
git config --global http.sslCAInfo "C:/Users/265840645/Desktop/cert/rbc-ca-bundle.cer" # 或者用双反斜杠格式 git config --global http.sslCAInfo "C:\\Users\\265840645\\Desktop\\cert\\rbc-ca-bundle.cer"
2. 临时指定配置执行克隆
如果全局配置被公司强制设置的系统级配置覆盖,可以在clone命令前直接指定要使用的证书,绕过系统配置:
git -c http.sslCAInfo="C:/Users/265840645/Desktop/cert/rbc-ca-bundle.cer" clone https://huggingface.co/decapoda-research/llama-7b-hf/
3. 用仓库级配置覆盖
如果需要长期在目标仓库使用该证书,先创建目录并进入,再设置仓库级配置(优先级高于全局和系统配置):
mkdir llama-7b-hf && cd llama-7b-hf git config --local http.sslCAInfo "C:/Users/265840645/Desktop/cert/rbc-ca-bundle.cer" git clone https://huggingface.co/decapoda-research/llama-7b-hf/ .
4. 检查环境变量干扰
公司管理的系统可能设置了GIT_SSL_CAINFO环境变量,强制指向系统证书。先检查当前环境变量:
- CMD命令:
echo %GIT_SSL_CAINFO% - PowerShell命令:
echo $env:GIT_SSL_CAINFO
如果输出是系统证书路径,临时修改环境变量后再克隆:
- CMD:
set GIT_SSL_CAINFO=C:/Users/265840645/Desktop/cert/rbc-ca-bundle.cer && git clone https://huggingface.co/decapoda-research/llama-7b-hf/ - PowerShell:
$env:GIT_SSL_CAINFO="C:/Users/265840645/Desktop/cert/rbc-ca-bundle.cer"; git clone https://huggingface.co/decapoda-research/llama-7b-hf/
5. 验证证书文件权限
确保Git能读取你的证书文件,公司权限管理可能限制了对桌面文件的访问。可以尝试将证书移到用户目录下的非桌面路径(比如C:\Users\265840645\.git\certs\rbc-ca-bundle.cer),再更新配置路径。
内容的提问来源于stack exchange,提问作者Pier-Olivier Marquis
相关产品推荐
相关产品推荐

