You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Git Push报错:RPC failed; curl 52 OpenSSL SSL_read: Connection was reset, errno 10054 解决方案咨询

解决Git推送时的 "error: RPC failed; curl 52 OpenSSL SSL_read: Connection was reset, errno 10054" 错误

这个错误我在日常推送代码时碰到过好几次,大概率是网络连接不稳、Git的HTTP缓存设置不足或者SSL配置出了问题,下面几个方法都是我亲测有效的,你可以挨个尝试:

1. 增大Git的HTTP POST缓存大小

有时候推送的代码包体积太大,默认的缓存容量撑不住就会导致连接中断。你可以通过这条命令调大缓存:

git config --global http.postBuffer 524288000

这个值对应500MB,如果你需要更大的缓存,比如1GB,可以改成1073741824

2. 切换到SSH协议代替HTTPS

HTTPS连接容易受网络波动影响,换成SSH协议往往能解决这类连接重置问题。首先你得确保已经在Git仓库配置好SSH密钥,然后修改远程仓库的URL:

  • 先查看当前的远程仓库地址:
git remote -v
  • 如果显示的是HTTPS格式(比如https://github.com/your-name/your-repo.git),改成SSH格式:
git remote set-url origin git@github.com:your-name/your-repo.git

记得把your-nameyour-repo换成你自己的用户名和仓库名。

3. 临时关闭SSL验证(仅限紧急情况,用完记得恢复)

如果是SSL证书验证环节出了问题导致连接中断,可以临时关闭验证来完成推送:

git config --global http.sslVerify false

推送完成后一定要改回来,保证仓库连接的安全性:

git config --global http.sslVerify true

4. 检查并更换稳定网络

很多时候这个错误就是网络波动搞的鬼——比如公共WiFi信号弱、VPN不稳定。试试切换到有线网络,或者重启路由器,暂时关掉VPN再推送。

5. 更新Git到最新版本

旧版本的Git可能存在一些网络相关的bug,更新到最新版本说不定就能解决问题。你可以在Git Bash里输入这条命令查看当前版本:

git --version

然后去Git官方渠道下载最新版本安装即可。

6. 分段推送大文件(如果提交里包含大文件)

如果你的提交里有超过100MB的大文件,就算调大缓存也可能失败。这时候可以用git push --force-with-lease分段推送,或者考虑用Git LFS来专门管理大文件。

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

火山引擎 最新活动