Windows11下Git SSH克隆特定仓库仅在特定路径高概率失败求助
问题:Git SSH克隆仓库时随机失败(Windows 11环境)
系统环境
- 系统:Windows 11
- Git版本:2025-06-28最新版Git Bash
- 目标仓库:GitHub公共仓库biodata(大小不足6MB),支持HTTPS和SSH两种克隆方式
克隆表现
- HTTPS方式克隆始终成功
- 在
/c/dev路径下用SSH克隆成功率约60% - 在
/d/dev路径下用SSH克隆成功率仅约5%
失败现象
进程卡在以下步骤:
Cloning into 'biodata'... remote: Enumerating objects: 991, done. remote: Counting objects: 100% (293/293), done. remote: Compressing objects: 100% (172/172), done. Receiving objects: 36% (357/991)
超时后出现错误:
fetch-pack: unexpected disconnect while reading sideband packet fatal: early EOF fatal: fetch-pack: invalid index-pack output
未等待超时的情况下,需执行taskkill /IM git.exe /F强制终止进程。
已尝试操作
从空配置到使用以下.gitconfig配置,问题仍未解决:
[core] askpass = compression = 0 eol = lf autocrlf = false fileMode = false ignoreStat = false packedGitLimit = 512m packedGitWindowSize = 512m [user] email = jeanmichael.celerier+github@gmail.com name = Jean-Michaël Celerier [filter "lfs"] smudge = git-lfs smudge -- %f process = git-lfs filter-process required = true clean = git-lfs clean -- %f [http] postBuffer = 1548576000 maxRequestBuffer = 200M [ssh] postBuffer = 1548576000 maxRequestBuffer = 200M [pack] window = 1 deltaCacheSize = 2047m packSizeLimit = 2047m windowMemory = 2047m
解决建议
1. 排查磁盘与路径问题
- 检查D盘健康:执行
chkdsk D:扫描磁盘错误,排除坏道或文件系统异常导致的写入阻塞 - 确认路径权限:右键
/d/dev文件夹→属性→安全,确保当前用户拥有完全控制权限,避免Git写入时权限不足 - 临时关闭安全防护:禁用Windows Defender或第三方杀毒软件对
/d/dev的实时监控,排查是否是安全软件拦截SSH数据包
2. 调整SSH连接参数
- 编辑SSH配置文件:执行
vim ~/.ssh/config(文件不存在则新建),添加以下内容:
Host github.com ServerAliveInterval 30 ServerAliveCountMax 5 IPQoS throughput
- 说明:
ServerAliveInterval每隔30秒发送心跳包,防止连接因无数据传输被断开;IPQoS throughput优先保证传输吞吐量,减少网络优先级导致的中断
3. 优化Git SSH传输配置
- 重置
.gitconfig的[ssh]段,改用小批量传输配置:
[core] compression = 0 [pack] window = 0 depth = 1
- 先克隆浅版本再拉取完整历史:
git clone --depth 1 git@github.com:eringee/biodata.git cd biodata git fetch --unshallow
- 说明:浅克隆减少单次传输数据量,降低连接中断概率,后续拉取完整历史成功率更高
4. 更换SSH客户端
- 改用Windows自带OpenSSH:
- 打开Windows设置→应用→可选功能,确认已安装"OpenSSH客户端"
- 执行
git config --global core.sshCommand "C:/Windows/System32/OpenSSH/ssh.exe",让Git调用系统SSH客户端
- 说明:系统自带OpenSSH在Windows环境下兼容性更好,可减少传输异常
内容的提问来源于stack exchange,提问作者Jean-Michaël Celerier
相关产品推荐
相关产品推荐

