Git 遇到了 early EOF index-pack failed 问题

简介: Git 遇到了 early EOF index-pack failed 问题  今天想 clone 一下 boost 在 github 的 repo,结果在 clone 的过程中遇到了下面的错误。

Git 遇到了 early EOF index-pack failed 问题 

今天想 clone 一下 boost 在 github 的 repo,结果在 clone 的过程中遇到了下面的错误。我原本以为是网络原因,今天学校网速废成渣了,很多同学都去网吧撸去了,所以就 retry 了一次。还是出现了下面的错误,然后就不得不 google 去了。

$ git clone https://github.com/boostorg/boost.git
Cloning into 'boost'...
remote: Counting objects: 183543, done.
remote: Compressing objects: 100% (69361/69361), done.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

后来 google 到的参考如下:

特别是第一篇(第一个QA),应该跟我的情况最为符合,不过我尝试了第二个 QA 中Voket 的回答给出的解决方案。因为我在 WindowsWindows 下的 GitGit 作的这个死。在这里就简单记录一下这个解决方案。

# 为 git 添加配置项,通过下面的命令可以简单完成
# 在这之前可以执行 git config -l 命令看看已有配置项有哪些
git config --add core.compression -1

上面是通过命令来完成的,很方便,当然可以直接修改 .gitconfig 文件(在用户目录下),如果你愿意的话。部分内容如下:

[user]
    name = Ggicci
    email = ...
[core]
    compression = -1

在 [core] 这个 section 里面添加 compression 属性即可。至于它的取值可以参考 Git Config Manpage,这个页面你可以通过man git config(linux) 或者 git config --help(windows)来查看本地版本。

core.compression

An integer -1..9, indicating a default compression level. -1 is the zlib default. 0 means no compression, and 1..9 are various speed/size tradeoffs, 9 being slowest. If set, this provides a default to other compression variables, such as core.loosecompression and pack.compression. - From Git Manpage

compression 是压缩的意思,从 clone 的终端输出就知道,服务器会压缩目标文件,然后传输到客户端,客户端再解压。取值为 [-1, 9],-1 以 zlib 为默认压缩库,0 表示不进行压缩,1..9 是压缩速度与最终获得文件大小的不同程度的权衡,数字越大,压缩越慢,当然得到的文件会越小。

这之后再尝试了一次 clone,works perfectly :)

$ git clone https://github.com/boostorg/boost.git
Cloning into 'boost'...
remote: Counting objects: 183543, done.
remote: Compressing objects: 100% (69361/69361), done.
remote: Total 183543 (delta 113990), reused 183372 (delta 113844)
Receiving objects: 100% (183543/183543), 67.89 MiB | 162.00 KiB/s, don
e.
Resolving deltas: 100% (113990/113990), done.
Checking connectivity... done.
相关文章
|
1月前
|
网络协议 Linux 网络安全
weavescope curl -L git.io/scope -o /usr/local/xx failed to connect to 2001: Network is unreachable
weavescope curl -L git.io/scope -o /usr/local/xx failed to connect to 2001: Network is unreachable
|
1月前
|
开发工具 git
Git -- 代码上传错误 error: failed to push some refs to ‘git@gitee.com:JMFive/uni-shop2.git‘
Git -- 代码上传错误 error: failed to push some refs to ‘git@gitee.com:JMFive/uni-shop2.git‘
|
1天前
|
开发工具 git
蓝易云 - 解决git clone时出现Failed to connect to 127.0.0.1 port 1573问题
希望这些信息能帮助你解决问题。如果问题仍然存在,可能需要检查你的网络设置或者联系你的网络管理员。
12 3
|
21天前
|
Shell 开发工具 git
git拉去代码报错"Failed to connect to 127.0.0.1 port 31181: Connection refused"
在克隆`https://example.git/`时遇到错误:"fatal: unable to access 'https://example.git/': Failed to connect to 127.0.0.1 port 31181: Connection refused"。原因是Windows上代理设置未正确关闭,影响了Git配置。解决方法是通过git bash运行命令检查并取消代理:`git config --global http.proxy`和`git config --global --unset http.proxy`。
34 1
 git拉去代码报错"Failed to connect to 127.0.0.1 port 31181: Connection refused"
|
14天前
|
开发工具 git
出现“error: failed to push some refs to ‘https://github.com/****.git‘”,如何解决问题
出现“error: failed to push some refs to ‘https://github.com/****.git‘”,如何解决问题
|
20天前
|
开发工具 git
MAC如何使用Git命令行上传本地项目及理解,failed to push some refs to ‘https://gitee.com/brother-barking/spxx.git
MAC如何使用Git命令行上传本地项目及理解,failed to push some refs to ‘https://gitee.com/brother-barking/spxx.git
|
1月前
|
网络安全 开发工具 git
git修改提交路径以及强制提交——异常:error: remote origin already exists.与异常:error: failed to push some refs to的解决
git修改提交路径以及强制提交——异常:error: remote origin already exists.与异常:error: failed to push some refs to的解决
34 0
|
1月前
|
Go 开发工具 git
【git】解决:Failed to connect to 127.0.0.1 port 7890: Connection refused
【git】解决:Failed to connect to 127.0.0.1 port 7890: Connection refused
840 0
|
1月前
|
缓存 开发工具 git
Git Cloning into :error: RPC failed
Git Cloning into :error: RPC failed
34 0
|
1月前
|
Linux 开发工具 git
【开发专题_03】unable to access ‘https://github.com/deviantony/docker-elk.git/‘: Failed connect to github
【开发专题_03】unable to access ‘https://github.com/deviantony/docker-elk.git/‘: Failed connect to github
77 2