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

向GitHub推送Android项目报RPC failed; curl 18错误,常规方案无效如何解决?

报错信息
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly
解决方案

你已尝试的调整http.postBuffer、切换SSH协议未解决问题时,可按以下步骤进一步排查:

  • 关闭git低速传输自动中断规则,执行以下命令:
    git config --global http.lowSpeedLimit 0
    git config --global http.lowSpeedTime 999999
    网络波动导致传输速度低于git内置阈值时,会主动断开连接,上述配置可禁用该中断逻辑,适配不稳定的网络环境。
  • 压缩仓库冗余对象,减小传输体积:
    执行前先确认项目根目录的.gitignore文件已正确配置,过滤了build/、.gradle/、local.properties、.idea/等无需提交的本地构建产物和配置文件,避免无效数据被提交。之后执行压缩命令:
    git gc --prune=now --aggressive
    该命令会清理git仓库中的冗余提交对象、压缩文件存储体积,大幅降低需要传输的数据量。
  • 拆分提交分批推送
    如果项目提交历史长、单次推送数据量过大,可以分批次推送提交,避免单次传输超限:
    git push <远程仓库别名> <本地分支名>~10:main
    上述命令为推送本地分支最近的10条提交到远程main分支,可逐步调整数值推送完所有历史提交。
  • 调整SSH保活配置(如使用SSH协议)
    在用户根目录的.ssh/config文件中新增以下配置,无该文件可直接新建:
Host github.com
  ServerAliveInterval 60
  ServerAliveCountMax 120

该配置会每60秒向GitHub发送一次保活数据包,最多发送120次,避免SSH连接因长时间无数据交互被服务器或运营商主动切断。

  • 切换网络环境重试
    部分运营商网络、公司内网、不稳定的代理/VPN会对大体积长连接传输做限制,可尝试切换手机热点等其他网络后再次推送。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 22:42:00