git报错:error: RPC failed; curl 16 Error in the HTTP2 framing layer

发布于:2025-03-13 ⋅ 阅读:(16) ⋅ 点赞:(0)

背景

执行git clone https://github.com/mannaandpoem/OpenManus.git报错了

报错信息如下:

Cloning into ‘OpenManus’…
error: RPC failed; curl 16 Error in the HTTP2 framing layer
fatal: expected flush after ref listing


DeepSeek给出了下面答复,我使用方式一完成了下载!

DeepSeek的回复


根据报错信息,git clone 过程中出现了 HTTP2 协议层错误,可能是网络不稳定或 Git 配置问题导致的。以下是解决方案:


  1. 切换 HTTP 协议版本
    HTTP2 协议在某些网络环境下可能出现兼容性问题,可尝试强制使用 HTTP/1.1:
git config --global http.version HTTP/1.1
git clone https://github.com/mannaandpoem/OpenManus.git

完成后恢复默认配置:

git config --global --unset http.version

  1. 关闭 SSL 验证(临时方案)
    若怀疑 SSL 证书问题,可临时关闭验证:
git config --global http.sslVerify false
git clone https://github.com/mannaandpoem/OpenManus.git

成功后建议恢复默认配置:

git config --global --unset http.sslVerify

  1. 使用 SSH 协议替代 HTTPS
    SSH 协议通常更稳定。需先配置 SSH 密钥:
  2. 生成密钥:
    ssh-keygen -t rsa -C "your_email@example.com"
    
  3. 将公钥(~/.ssh/id_rsa.pub)添加到 GitHub 账户的 SSH Keys 中。
  4. 使用 SSH URL 克隆:
    git clone git@github.com:mannaandpoem/OpenManus.git
    

  1. 调整 Git 缓存配置
    大仓库或网络延迟可能导致传输中断,增大缓存区:
git config --global http.postBuffer 524288000  # 500MB
git clone https://github.com/mannaandpoem/OpenManus.git

  1. 其他排查步骤
  • 检查 Git 版本:升级到最新版本(git --version)。
  • 分段克隆:使用 --depth 1 仅克隆最近提交:
    git clone --depth 1 https://github.com/mannaandpoem/OpenManus.git
    
  • 更换网络环境:尝试切换网络(如使用手机热点)。

引用来源

  • :HTTP2 协议兼容性问题可能与网络配置有关。
  • :SSL 验证关闭可临时解决证书问题。
  • :SSH 配置可提升克隆稳定性。