git clone问题:repo太大了?(50公尺)

Jos*_*osh 4 git git-pull git-clone

因为无法克隆git repo而遇到了问题.它开始运行然后取消一半.我当前的git repo大小是53.7 MB Git版本在服务器和我的遥控器上是1.7.12.4.

错误如下:

MacBook-Pro:htdocs macbook$ git clone myrepo@mysite.com:~/opt/git/myrepo.git 
Cloning into 'myrepo'...
zcardepo@zcardepot.com's password:
remote: Counting objects: 8888, done.
remote: Compressing objects: 100% (7185/7185), done.
Write failed: Broken pipe267/8888), 1.03 MiB | 1001.00 KiB/s
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
Run Code Online (Sandbox Code Playgroud)

我创建了一个新的新回购,克隆就好了.一旦我将我的站点文件添加到它并将它们推送到远程.我再也无法从中克隆了.但我可以从中汲取它.

我添加了这个没有运气:

[core]
    compression = -1
[pack]
    windowMemory = 10m
    packSizeLimit = 20m
Run Code Online (Sandbox Code Playgroud)

我试着将这两者都提升到更高的价值.没运气

我也尝试在远程仓库上运行git gc --aggressive和git gc --prune.

我已经看过这篇文章了,但我的版本没有那么大(1g +)也看到一个人有问题与git版本不匹配,但这不是以太的情况.

mu *_*u 無 13

我认为你遇到的问题是你的克隆每次都在中间断开.

因此,我不建议您每次都从头开始一次又一次地克隆一个回购,而是建议您在新创建的回购中进行一次获取.

基本上,初始化一个空的存储库

cd repo_name && git init
Run Code Online (Sandbox Code Playgroud)

将原始仓库添加为此仓库中的远程仓库

git remote add origin url/to/repo
Run Code Online (Sandbox Code Playgroud)

现在做一个git fetch.

这样,即使您的克隆在中间中断,fetch也会在下次运行时注意引入未被攻击的对象.


或者,您可以在此处此处查看解决方案.

  • @tdm您是否检查了我在[此处](http://stackoverflow.com/a/22317479/1860929)和[此处](http://stackoverflow.com/a/2505821/1860929)提到的其他解决方案?最简单的原因可能是网络拥塞中断了克隆操作,从而导致您再次从头开始。 (2认同)