Git 克隆在 Linux VM 上通过 HTTPS 故障转移(膨胀:数据流错误)

Posted

技术标签:

【中文标题】Git 克隆在 Linux VM 上通过 HTTPS 故障转移(膨胀:数据流错误)【英文标题】:Git clone fails over HTTPS on Linux VM (Inflate: Data Stream Error) 【发布时间】:2020-10-05 12:12:15 【问题描述】:

我尝试使用 Xubuntu 和 Lubuntu 虚拟机作为 Windows 10 上的来宾通过 HTTPS 克隆多个 github 存储库(例如 Node.js 存储库)但无济于事,因为它因数据流错误而失败:

fatal: pack has bad object at offset 610504: inflate returned -3
fatal: index-pack failed

错误在同一命令的多次运行中发生变化。但是,使用 SSH 可以正常工作。该错误似乎与 zlib 有关(来源:https://superuser.com/questions/1067443/git-pack-has-bad-object-when-pushing-to-remote)。

另外,不知道是不是和使用VirtualHost(NAT)的“默认”网络模式有关。

我试图在主机上克隆上述 repos,它通过 HTTPS 和 SSH 都可以正常工作。

我使用了 Xubuntu 18.04 和 git 2.27。 Virtual Box 版本为 6.1.10。

【问题讨论】:

我也有这个问题。很惊讶没有回应。 【参考方案1】:

回答我自己的答案:

问题似乎已经解决,但我不清楚实际的解决方法是什么。我目前正在使用:

Windows 10 专业版,操作系统内部版本 19041.685。 Docker for windows 版本 3.3.0 (62916) 与 WSL2 引擎 20.10.5 客户机上的 Xubuntu 18.04。 Virtual Box 6.1.18 安装了来宾添加。

正如 Joachim Schiele 回答的那样,如果您遇到此问题,禁用 Hyper-V 是一种解决方法。但是,据我所知,它已启动并运行,我不再遇到此问题。

【讨论】:

【参考方案2】:

一位同事刚刚告诉我,他们禁用了 hyperV,然后它就起作用了。他们使用 Windows 10、Windows 上的一些最新 Virtualbox 版本和 NAT 适配器来使 Debian VM 联机。

似乎与网络和校验和卸载计算有关。

抱歉,没有更多细节。

【讨论】:

以上是关于Git 克隆在 Linux VM 上通过 HTTPS 故障转移(膨胀:数据流错误)的主要内容,如果未能解决你的问题,请参考以下文章

无法通过 HTTP 使用 Git 进行克隆

来自 gitlab 的 Git 克隆在 Linux 上失败,而在 Windows git bash 中工作

通过克隆VM来测试TFS升级?

vm克隆linux系统 后连接网络

GitLab--不支持ssh时通过http实现免密

Linux | 分布式版本控制工具Git版本管理 + 远程仓库克隆