Git无法推送单个CSS文件,报错远程端意外挂断该如何解决?
Git push 远程断开报错解决方案
常见报错示例
> git push Enumerating objects: 14, done. Counting objects: 100% (14/14), done. Delta compression using up to 12 threads Compressing objects: 100% (7/7), done. Writing objects: 100% (8/8), 215.75 KiB | 11.35 MiB/s, done. Total 8 (delta 2), reused 5 (delta 0), pack-reused 0 send-pack: unexpected disconnect while reading sideband packet Connection to github.com closed by remote host. fatal: the remote end hung up unexpectedly
❯ git push Enumerating objects: 14, done. Counting objects: 100% (14/14), done. Delta compression using up to 12 threads Compressing objects: 100% (7/7), done. Writing objects: 100% (8/8), 215.76 KiB | 11.36 MiB/s, done. Total 8 (delta 2), reused 5 (delta 0), pack-reused 0 send-pack: unexpected disconnect while reading sideband packet client_loop: send disconnect: Broken pipe fatal: the remote end hung up unexpectedly
基础修复步骤(优先尝试,无需修改仓库结构)
该报错本质是本地Git传输配置不足、对象索引异常导致,与文件大小、网络状态无关,无需重新克隆仓库,按顺序执行以下操作即可:
- 调整Git传输缓存上限,全局配置一次永久生效
若使用HTTPS协议推送:git config --global http.postBuffer 524288000
若使用SSH协议推送:git config --global ssh.postBuffer 524288000
上述配置将传输缓存上限调整为500M,可覆盖绝大多数文件推送场景。 - 修复本地仓库对象索引
先确保所有工作区变更已提交或暂存,避免数据丢失:git fsck --full
该命令会扫描所有本地Git对象,自动修复损坏的索引条目。 - 清理本地冗余对象
git gc --prune=now --aggressive - 重置远程仓库关联,消除远程缓存异常
git remote remove origin git remote add origin <你的远程仓库地址> git pull origin main --rebase - 重新推送提交
git push origin main
正常情况下即可完成推送。
进阶修复方案(保留所有分支、stash、工作区内容,无需重新克隆)
如果基础步骤执行后仍推送失败,可通过重置本地Git实例解决,完全不会丢失任何本地内容:
- 导出需要保留的stash内容:
执行git stash list查看所有stash记录,对每个需要保留的stash执行:git stash show -p stash@{n} > stash_n.patch
将补丁文件存到仓库目录外的位置备用。 - 重命名原有
.git文件夹(不要删除,可用于故障回滚):mv .git .git_bak - 初始化新的Git实例:
git init - 关联远程仓库并拉取全部分支记录:
git remote add origin <你的远程仓库地址> git fetch origin --all - 切换到原有工作分支:
git checkout main
此时工作区所有未推送的提交、修改的文件都会完整保留,没有任何变动。 - 恢复stash内容:
执行git apply <补丁文件路径>即可导入之前导出的stash变更。 - 正常提交推送即可。
后续预防措施
- 每月定期执行一次
git gc清理本地冗余对象,避免索引异常 - 不要手动修改
.git文件夹内的文件 - 避免在Git提交、推送过程中强制中断进程
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

