【问题标题】:git clone issue: repo too large? (50m)git clone 问题:repo 太大? (50公尺)
【发布时间】:2014-09-22 04:44:03
【问题描述】:

遇到无法克隆 git 存储库的问题。它开始运行,然后中途取消。 我当前的 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

我创建了一个全新的 repo,克隆就好了。一旦我将我的站点文件添加到其中并将它们推送到远程。我不能再从中克隆。但我可以很好地摆脱它。

我添加了这个没有运气:

[core]
    compression = -1
[pack]
    windowMemory = 10m
    packSizeLimit = 20m

我尝试将这两个值都提高到更高的值。没有运气

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

我见过this post,但我的没有那么大(1g+) 还可以看到有人对 git 版本有问题 not matching,但情况并非如此。

【问题讨论】:

    标签: git git-pull git-clone


    【解决方案1】:

    也可以尝试增加你的 postBuffer

    git config --global http.postBuffer 1048576000

    【讨论】:

      【解决方案2】:

      我认为您遇到的问题是您的克隆每次都会在中间中断。

      因此,我建议您不要每次从头开始一次又一次地克隆 repo,而是对新创建的 repo 进行 fetch。

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

      cd repo_name && git init
      

      在这个 repo 中添加原始 repo 作为远程

      git remote add origin url/to/repo
      

      现在做一个git fetch

      这样,即使您的克隆在中间中断,fetch 也会注意仅在下次运行时引入未提取的对象。


      或者,您可以检查解决方案herehere

      【讨论】:

      • 这个方法确实有效。我真的很想弄清楚为什么会这样。给某人一个克隆链接让他们开始工作会更容易。
      • @tdm 你检查过我提到的herehere 的其他解决方案吗?最简单的原因可能是网络拥塞中断了中间的克隆操作,从而导致您重新从头开始。
      • 错过了这些。对链接 1 的回答)git clone --depth 1git fetch –-depth=2147483647 都适用于克隆,当我执行 git pull --all 时,它说它都是最新的。我注意到只有我原来的主分支显示在我的远程仓库中。不是我的开发分支,我几乎拥有所有东西。就像它找不到我的开发分支,这似乎是导致网络拥塞的问题。
      • 对链接 2 的回答)我回到服务器和我的机器上的 git 1.7.1。同样的问题仍然存在。我重新尝试了您在 1.7.1 上运行时提供的链接 1 中的步骤。
      • 45m 是一次提交的大小吗?那是相当大的,IIRC,github 有一个最大 50MB 大小的提交限制。如果您有一个那么大的提交 - 这应该可以解释为什么每次提取/拉取/克隆都会被中断。我的建议是减少该提交。至于如何实际减少现有提交的大小.. - 我认为您将不得不问另一个问题。
      猜你喜欢
      • 2015-01-27
      • 2012-08-24
      • 1970-01-01
      • 2020-05-30
      • 2015-09-24
      • 2011-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多