这个问题是由于 Git 无法验证 GitHub 的 SSL 证书导致的。常见于 Windows 系统中,可能是由于:

主要原因:

  1. Git 无法找到有效的根证书
  2. 系统缺少必要的 CA 证书
  3. 代理或防火墙问题
  4. 时间不同步

解决方案(按推荐顺序尝试):

方案1:临时禁用 SSL 验证(最快但不安全)

git config --global http.sslVerify false
git clone https://github.com/congde/emotional_chat.git

克隆完成后建议恢复:

git config --global http.sslVerify true

输入上述命令后可以正常拉取代码到本地
在这里插入图片描述

方案2:手动配置 Git 使用系统证书

git config --global http.sslbackend schannel  # Windows 使用系统证书存储
# 或
git config --global http.sslbackend openssl
git config --global http.sslCAInfo "C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt"

方案3:更新 Git 和证书

  1. 更新 Git

    • 下载最新版 Git:https://git-scm.com/download/win
  2. 手动下载证书

    # 下载最新的 CA 证书
    curl -L -o cacert.pem https://curl.se/ca/cacert.pem
    git config --global http.sslCAInfo "E:/pythonProjects/AIEmotionChat260126/cacert.pem"
    

方案4:使用 SSH 方式替代 HTTPS

# 1. 生成 SSH key(如果没有)
ssh-keygen -t rsa -b 4096

# 2. 将公钥添加到 GitHub
#    - 复制 ~/.ssh/id_rsa.pub 内容
#    - 添加到 GitHub Settings > SSH and GPG keys

# 3. 使用 SSH 克隆
git clone git@github.com:congde/emotional_chat.git

方案5:修复系统证书

# 以管理员身份运行 PowerShell
certutil -generateSSTFromWU roots.sst
# 然后导入证书

推荐操作顺序:

  1. 先尝试 方案1 临时克隆代码
  2. 成功后,尝试 方案4 使用 SSH(更稳定)
  3. 或者 方案2/3 修复证书问题

检查当前配置:

git config --global --list | grep ssl

如果使用公司网络/代理:

# 设置代理
git config --global http.proxy http://proxy.example.com:8080
git config --global https.proxy https://proxy.example.com:8080

建议:如果只是需要快速获取代码,先用方案1临时禁用SSL验证,获取代码后再研究根本解决方案。对于长期使用,推荐配置SSH密钥(方案4)。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐