LQ博客 www.lqblogs.com
arrows
nav

git 文件太大 克隆失败的解决方法

作者:LQ 来源:原创 发布时间:2019-11-20 浏览量:1349 评论:0 点赞:1
git.exe pull --progress -v --no-rebase "origin" master

remote: Counting objects: 178404, done.
remote: Compressing objects: 100% (74558/74558), done.
Connection reset by 192.168.2.252 port 22
fatal: early EOF
fatal: The remote end hung up unexpectedly
fatal: index-pack failed

遇到这个问题我第一时间就是百度,并且迅速定位到了其中一个解决方案:

后面追加“compression=-1” 或者 “postBuffer=524288000”


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

postBuffer是指缓存,将缓存设置的尽量大,例如git config --global http.postBuffer 524288000 (500M)


输入:

git clone  https://example.com/example/example.git compression=-1

git clone  https://example.com/example/example.git postBuffer=524288000

执行上面命令之后,发现问题依然存在


于是我又继续探索,很快找到了另一个解决方案:(也是抱着试一试的态度,没想到却可以了)

描述:当使用git clone 产生这个问题的时候,在第一次克隆的时候,把克隆深度设置为1

git clone  https://example.com/example/example.git --depth  1


总结:第一个方案或许也是可行的,由于影响因素比较多,没能解决我当下问题,但并不代表不能解决你的问题,当然,如果你的问题第一个方法也解决不了,你可以用我提供的第二个解决方法

补充:后面又遇到这个问题,当我直接使用第二种解决方法的时候,发现问题依旧,但当我用完第一种方法再用第二种方法,结果正常。因此,可能由于我文件过大,需要先设置压缩再设置深度。

以上为个人看法,仅供参考。

git
如果你感觉本文章对你有帮助的话,那就点赞、打赏或订阅一下吧
点赞(1)
打赏
倒踩(1)
关闭 感谢您的支持,我会继续努力
微信支付
支付宝支付
扫码打赏,建议金额1-20元
浏览量(1349)
讨论本篇文章(0)
发表评论

最多访问文章

最新文章