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

GitHub上传文件时Writing objects阶段卡住导致上传失败问题

问题诱因定位
  • 网络链路问题:日志显示上行传输速度仅为1KB/s,远低于正常传输水平,大概率是本地到GitHub服务器的国际出口链路拥堵、运营商上行带宽限制,或者网络波动导致传输超时,这是该类问题最常见的诱因。
  • 仓库历史存在遗留大文件:即使当前提交的视频仅为6MB,若之前提交过超过100MB限制的文件后仅在工作区删除、未清理Git提交历史,推送时仍会上传历史中的大文件,触发大小限制同时拖慢传输速度。
  • Git传输配置不合理:默认的Git HTTP缓存、压缩配置未针对二进制文件做优化,传输时会产生额外开销,遇到网络不稳定时更容易中断。
  • GitHub速率限制:短时间内多次推送、批量提交文件可能触发GitHub的临时速率限制,上传速度会被强制压低到极低水平,最终超时失败。
对应解决方法
  • 网络层面排查优化:先尝试提交1个几KB的纯文本文件到仓库验证传输速度,若仍然极慢,可切换手机热点、更换其他运营商网络,或配置合规的Git推送加速源提升链路稳定性。
  • 清理仓库历史大文件:执行命令git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')",查询仓库历史中体积最大的5个文件,若存在未清理的历史大文件,使用git filter-repo工具删除对应历史记录后再推送。
  • 调整Git传输配置:执行git config --global http.postBuffer 104857600将HTTP传输缓存调整到100MB,执行git config --global core.compression 0临时关闭二进制文件压缩(推送完成后可改回默认值1),减少传输额外开销。
  • 改用Git LFS管理二进制文件:即使文件未到100MB限制,也建议用Git LFS优化视频类二进制文件的传输效率,执行git lfs install完成初始化,执行git lfs track "*.你的视频后缀"(如*.mp4),提交生成的.gitattributes文件后再重新推送视频即可。
  • 更换推送协议:如果是HTTPS协议推送失败,可绑定SSH密钥到GitHub账号,改用SSH协议推送,SSH协议的速率限制阈值更高,传输稳定性也更优。若触发临时速率限制,等待1-2小时后再尝试推送即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 05:45:04