You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git已设http.sslVerify=true仍反复提示TLS验证禁用问题排查

排查并解决Git「TLS证书验证已禁用」警告及代理超时问题

1. 检查全局与系统级Git配置

仅排查本地仓库配置不够,全局或系统级配置可能覆盖本地设置:

  • 执行git config --global --get --show-origin http.sslVerify,查看全局配置中该参数的取值与来源
  • 执行sudo git config --system --get --show-origin http.sslVerify(需管理员权限),检查系统级配置
  • 若全局/系统级配置中http.sslVerify为false,执行对应命令修正:
    git config --global http.sslVerify true
    # 系统级配置修正(需sudo)
    sudo git config --system http.sslVerify true
    

2. 排查代理对SSL验证的干扰

带密码验证的代理可能强制修改SSL验证逻辑,即使Git配置为true也会触发警告:

  • 临时关闭代理,执行git fetch等操作,若警告消失,说明问题出在代理
  • 若确认是代理导致:
    • 确保代理使用的CA证书已被系统信任,或者在Git中指定该证书路径:
      git config --global http.sslCAInfo /绝对路径/代理CA证书.pem
      
    • 检查代理客户端的SSL设置,确认没有强制禁用证书验证的选项

3. 检查单个远程仓库的SSL配置

部分仓库可能单独设置了sslVerify参数,覆盖全局/本地配置:

  • 执行git remote -v确认远程地址为HTTPS协议(HTTP协议无SSL验证逻辑,可能触发异常警告)
  • 针对每个远程仓库,检查单独的SSL配置:
    # 替换<remote-name>为你的远程仓库名(通常是origin)
    git config --get --show-origin remote.<remote-name>.sslVerify
    
    若返回false,执行以下命令修正:
    git config remote.<remote-name>.sslVerify true
    

4. 解决主机提供商自动检测超时问题

该超时与代理连通性直接相关:

  • 用curl测试代理访问Git远程主机的连通性:
    # 替换代理地址、账号密码、Git远程主机
    curl -x http://<代理用户名>:<代理密码>@<代理地址>:<代理端口> https://<Git远程主机>
    
    若curl超时,检查代理的地址、端口、账号密码是否正确,或代理服务器是否限制了Git主机的访问
  • 增加Git代理超时时间:
    git config --global http.proxyTimeout 30
    

5. 极端情况:重置Git配置

若上述步骤无效,尝试重置Git配置并重新初始化:

  • 清除所有层级的http.sslVerify配置:
    git config --global --unset-all http.sslVerify
    git config --local --unset-all http.sslVerify
    sudo git config --system --unset-all http.sslVerify
    
  • 重新启用SSL验证:
    git config --global http.sslVerify true
    
  • 重新配置代理信息:
    git config --global http.proxy http://<代理用户名>:<代理密码>@<代理地址>:<代理端口>
    git config --global https.proxy http://<代理用户名>:<代理密码>@<代理地址>:<代理端口>
    

内容的提问来源于stack exchange,提问作者vlad_tepesch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 23:03:23