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

使用Git推送代码至GitHub时遭遇SSL错误求助

Git推送GitHub时SSL错误的解决办法

问题重现

推送代码时反复出现如下错误:

Priya@DESKTOP-I2FML9S MINGW64 ~/OneDrive/Desktop/Client_Site (master)
$ git push -u origin master
Enumerating objects: 110, done.
Counting objects: 100% (110/110), done.
Delta compression using up to 2 threads
Compressing objects: 100% (108/108), done.
Writing objects: 100% (110/110), 1.11 MiB | 7.13 MiB/s, done.
Total 110 (delta 9), reused 0 (delta 0), pack-reused 0
error: RPC failed; curl 56 OpenSSL SSL_read: OpenSSL/1.1.1t: error:140943FC:SSL routines:ssl3_read_bytes:sslv3 alert bad record mac, errno 0
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly
Everything up-to-date

已尝试增大Git缓冲区(git config --global http.postBuffer 524288000)且网络状态稳定,但问题仍未解决。

可行解决方案

1. 切换SSH协议替代HTTPS

如果当前使用HTTPS远程地址,换成SSH协议规避SSL握手问题:

  • 查看当前远程地址:git remote -v
  • 替换为SSH格式地址:git remote set-url origin git@github.com:你的用户名/仓库名.git
  • 确保本地已配置SSH密钥并添加至GitHub账户,再重新推送:git push -u origin master

2. 临时禁用SSL验证(应急方案,不推荐长期使用)

临时关闭Git的SSL验证,推送完成后恢复:

  • 禁用验证:git config --global http.sslVerify false
  • 执行推送:git push -u origin master
  • 恢复验证:git config --global http.sslVerify true

3. 更新OpenSSL版本

错误提示关联OpenSSL 1.1.1t,尝试更新到最新稳定版:

  • Windows环境下,卸载当前Git,重新下载安装最新版Git(自带更新后的OpenSSL组件)
  • 安装时选择「Use the OpenSSL library」选项

4. 清理Git SSL会话缓存

本地缓存的SSL会话可能异常,清理后重试:

  • 取消SSL会话缓存配置:git config --global --unset http.sslSessionCache
  • 重新执行推送命令

5. 检查并取消代理设置

隐性代理可能干扰SSL连接:

  • 查看当前代理配置:git config --global --get http.proxy、git config --global --get https.proxy
  • 存在代理则取消:git config --global --unset http.proxy、git config --global --unset https.proxy
  • 重新推送测试

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 14:32:39