具有配额的计算机上的git gc
简单的问题是,我试图在一台有配额的机器上运行具有配额的计算机上的git gc,git,quota,git-gc,Git,Quota,Git Gc,简单的问题是,我试图在一台有配额的机器上运行git gc。在gc之前,我的使用量大约为18GB,几乎所有这些都是我克隆的git存储库。我的磁盘限制是25GB。在git-gc操作期间,将有足够的临时文件写入磁盘以达到我的限制,从而导致git-gc操作失败 在失败的操作之后,我可以删除.git/objects/pack/tmp\u pack.*,并恢复到18GB的使用率,但我真的希望实际完成git gc,并重新获得一点性能 是否有一些奇特的选项(或一系列其他git命令)可以使用,而不需要先将>7GB
git gc
。在gc之前,我的使用量大约为18GB,几乎所有这些都是我克隆的git存储库。我的磁盘限制是25GB。在git-gc
操作期间,将有足够的临时文件写入磁盘以达到我的限制,从而导致git-gc
操作失败
在失败的操作之后,我可以删除.git/objects/pack/tmp\u pack.*
,并恢复到18GB的使用率,但我真的希望实际完成git gc
,并重新获得一点性能
是否有一些奇特的选项(或一系列其他git命令)可以使用,而不需要先将>7GB的临时文件写入磁盘?看起来最好的解决方案是要求它提供更大的配额,尽管我仍然有兴趣听到解决方法。今天他们觉得很慷慨,但明天…:) gc的哪一部分对您很重要?您可以尝试分别运行
git prune
和git repack
部分。使用git prune
,确保使用--expire
选项指定截止日期。如果你的回购协议中有大量的松散对象,那么先把它们清理掉会很有帮助*
使用git-repack
,您可能会弄乱深度和窗口设置,以获得足够小的内容,以便在现有空间内运行
*我并不假装完全理解所涉及的所有问题,但我确实注意到在git gc代码中重新打包之后才进行修剪。
git prune
是一个很好的建议,很好的调用Jefromi
你可以做的另一件事是压缩你的其他文件<代码>git gc;减压
7z
获得了惊人的压缩,但不会保留硬链接和Unix所有者/组IIRC。如果你有一个配额,这些文件可能都属于你的帐户,所以不用担心第一个分数。但是最安全的是tarc--lzma
(如果你有),或者干脆tarczf
或者cjf
。如果你有很多小文件,那么块大小的外部碎片可能会很重要。你运行的是什么版本的git?