当前位置:   article > 正文

成功解决使用git clone下载失败的问题: fatal: 过早的文件结束符(EOF) fatal: index-pack 失败_虚拟机中git 过早的文件结束符连接被对方重设

虚拟机中git 过早的文件结束符连接被对方重设

一.使用 http 可能出现的问题和解决

1.问题描述

  1. ~$ git clone https://github.com/oKermorgant/ecn_baxter_vs.git
  2. 正克隆到 'ecn_baxter_vs'...
  3. remote: Enumerating objects: 13, done.
  4. remote: Counting objects: 100% (13/13), done.
  5. remote: Compressing objects: 100% (10/10), done.
  6. error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.
  7. fatal: The remote end hung up unexpectedly
  8. fatal: 过早的文件结束符(EOF)
  9. fatal: index-pack 失败

2.可能的原因和解决方案

1.缓存不够

按照下面操作增加缓存(命令行操作),若是不想使用命令行,也可以在用户家目录下的全局git配置文件.gitconfig中,直接更改文件内的内容

  1. $ git config --global http.postBuffer 524288000
  2. $ git config --list
  3. http.postbuffer=524288000

二.使用 git 可能出现的问题和解决

1.问题描述

使用git clone 克隆代码时出现以下报错,这个一般是由于代码仓库太大,而本地网络不是很稳定都可以造成以下问题

2.解决办法

方法1:

可以将这些行添加到全局git配置文件.gitconfig中,这个文件在用户家目录下

# 在这之前可以执行 git config -l 命令看看已有配置项有哪些

  1. [user]
  2. name = xxxx
  3. email = xxxx@admin.com
  4. packedGitLimit = 512m
  5. packedGitWindowSize = 512m
  6. [http]
  7. postBuffer = 1048576000
  8. lowSpeedLimit = 0
  9. lowSpeedTime = 999999
  10. [core]
  11. compression = 0
  12. [pack]
  13. deltaCacheSize = 2047m
  14. packSizeLimit = 2047m
  15. windowMemory = 2047m

解释:

  • 配置git的最低速和最低速时间
  1. git config --global http.lowSpeedLimit 0
  2. git config --global http.lowSpeedTime 999999 单位 秒
  • compression 是压缩的意思,取值为 [-1, 9],-1 以 zlib 为默认压缩库,0 表示不进行压缩,1~9 是压缩速度与最终获得文件大小的不同程度的权衡,数字越大,压缩越慢,最后得到的文件会越小。

方法2:

把上面的 compression = 0 改成 compression =-1

git config --global core.compression -1

compression 是压缩的意思,取值为 [-1, 9],-1 以 zlib 为默认压缩库,0 表示不进行压缩,1~9 是压缩速度与最终获得文件大小的不同程度的权衡,数字越大,压缩越慢,最后得到的文件会越小。


总而言之,以上的方法,不论是在命令行还是在在文件中直接修改,都改的是用户家目录下的.gitconfig文件

大家也可以在网上再搜一搜其他的解决办法,我看了很多资料,大体上都是更改.gitconfig文件中的配置,大家针对不同的问题可以尝试不同的方法

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/723722
推荐阅读
相关标签
  

闽ICP备14008679号