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

目录

背景

执行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:
bash 复制代码
git config --global http.version HTTP/1.1
git clone https://github.com/mannaandpoem/OpenManus.git

完成后恢复默认配置:

bash 复制代码
git config --global --unset http.version

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

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

bash 复制代码
git config --global --unset http.sslVerify

  1. 使用 SSH 协议替代 HTTPS
    SSH 协议通常更稳定。需先配置 SSH 密钥:

  2. 生成密钥:

    bash 复制代码
    ssh-keygen -t rsa -C "your_email@example.com"
  3. 将公钥(~/.ssh/id_rsa.pub)添加到 GitHub 账户的 SSH Keys 中。

  4. 使用 SSH URL 克隆:

    bash 复制代码
    git clone git@github.com:mannaandpoem/OpenManus.git

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

  1. 其他排查步骤
  • 检查 Git 版本:升级到最新版本(git --version)。

  • 分段克隆:使用 --depth 1 仅克隆最近提交:

    bash 复制代码
    git clone --depth 1 https://github.com/mannaandpoem/OpenManus.git
  • 更换网络环境:尝试切换网络(如使用手机热点)。


引用来源

  • :HTTP2 协议兼容性问题可能与网络配置有关。
  • :SSL 验证关闭可临时解决证书问题。
  • :SSH 配置可提升克隆稳定性。
相关推荐
深海鱼在掘金4 天前
Git 完全指南 —— 第1章:Git 概览与版本控制演进
git
程序员mine4 天前
HTTPS-TLS加密与证书完全指南(中)
网络协议·https·ssl
之歆4 天前
现代 HTTP 客户端深度解析:Fetch 与 Axios
chrome·网络协议·http
noravinsc4 天前
关于Git Flow
git
小胖xiaopangss4 天前
BRpc使用
c++·rpc
蜜獾云4 天前
在Git中配置用户名和密码
git
酉鬼女又兒4 天前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php
dog2504 天前
不要再继续优化 TCP
网络协议·tcp/ip·php
程序员mine4 天前
HTTPS-TLS加密与证书完全指南(上)
网络协议·https
scx_link4 天前
通过git bash在本地创建分支,并推送到远程仓库中
开发语言·git·bash