无法克隆组织Git仓库:invalid index-pack output错误排查
解决Git克隆大仓库时Connection reset/early EOF错误
你遇到的client_loop: send disconnect: Connection reset by peer和early EOF错误,大多和仓库体积过大、网络不稳定或Git默认配置不匹配有关,结合你已经配置好SSH密钥的情况,可以试试以下几种解决方法:
1. 调整Git核心配置
执行以下命令修改Git的压缩、缓存和大文件处理设置,降低传输时的资源消耗和中断概率:
git config --global core.compression 0 git config --global http.postBuffer 1048576000 git config --global core.bigFileThreshold 500m
core.compression 0:关闭压缩,减少CPU处理压力,避免因压缩耗时过长导致连接中断http.postBuffer:增大POST缓冲区到1GB,适配大文件传输core.bigFileThreshold:设置500MB为大文件阈值,让Git更高效处理仓库里的大文件
2. 浅克隆后补全完整历史
如果仓库体积特别大,直接克隆容易中断,先做浅克隆只拉取最近一次提交,再补全所有历史:
git clone --depth 1 git@github.org.com:user-name/xyz.git cd xyz git fetch --unshallow
如果--unshallow依然失败,可以分批拉取历史,比如每次拉取1000条提交,重复执行直到完成:
git fetch --depth 1000
3. 排查网络环境问题
- 切换到有线网络,避免无线信号不稳定导致的连接重置
- 检查本地防火墙、杀毒软件是否拦截了SSH(端口22)连接
- 尝试更换网络环境(比如手机热点),排除运营商网络限制
4. 优化SSH连接保活设置
新建或修改C:\Users\raval\.ssh\config文件,添加以下配置,避免SSH连接因长时间无数据传输被服务器断开:
Host github.org.com ServerAliveInterval 60 ServerAliveCountMax 3
ServerAliveInterval 60:每60秒向服务器发送一次保活数据包ServerAliveCountMax 3:连续3次未收到响应才断开连接
内容的提问来源于stack exchange,提问作者Saawaj
相关产品推荐
相关产品推荐

