【发布时间】:2012-03-22 15:22:46
【问题描述】:
我真的可以在这里得到一些帮助。
我刚刚创建了一个新的裸仓库作为开发推送的生产目标。 我还在服务器上将工作 Web 目录作为 git 存储库。 服务器在centos5.5上运行git 1.7.4.1
在 web 目录中创建新的 repo 后,我执行了 git add 。 它统计了 2300 个和一些奇怪的文件以及超过 230k 的插入。
我提交了新添加的文件库。很好很干净。 但是,当我执行 git push origin master 时,它一直给我这个(请注意,我有 8 个 CPU,因此有 8 个线程。文档说这是正常的);
# git push --mirror
Counting objects: 2000, done.
Delta compression using up to 8 threads.
warning: suboptimal pack - out of memory
fatal: inflateInit: out of memory (no message)
error: failed to push some refs to '/home/ggadmin/gg-prod.git'
我尝试了以下方法来解决这个问题,但都产生了相同的结果;
git repack -adf --window-memory=100m
^ tried running this up to 1024m. Same result.
甚至尝试了强制推送,但得到了同样的结果,只是出现了 malloc 错误;
# git push -f origin master
Counting objects: 2000, done.
Delta compression using up to 8 threads.
warning: suboptimal pack - out of memory
fatal: Out of memory, malloc failed (tried to allocate 2340 bytes)
error: failed to push some refs to '/home/ggadmin/gg-prod.git'
我已经为此工作了 2 天,并尝试了几乎所有可以在 google 和 SO 上找到的东西。
试图解决这个问题,我已经束手无策了。请告诉我那里有人知道可以做些什么来完成这项工作?
【问题讨论】:
-
可以肯定的是,这与
postBuffer无关? stackoverflow.com/questions/6842687/… -
请解释一下你的意思,VonC,因为这对我来说是一个关于 Git 的新术语。
-
我想知道
git config --global http.postBuffer 524288000是否无法让您的推送工作。 -
我当然可以试试。我现在在我的办公室,所以我必须等到我回家看看这是否有效。谢谢,VonC! :)