我想用hg或git进行大小约5GB的回购。 他们是否适合回购这么大的规模?
5 GB的存储库很大,但不是非常大。 你不说5 GB是单独的历史,工作副本还是综合数字?
为了便于比较,我可以告诉你, OpenOffice存储库有2.0 GB的历史(大约270,000个变更集)和2.3 GB的工作副本。 Mercurial可以在这个尺寸上运行:
$ time hg status hg status 0.63s user 0.26s system 99% cpu 0.886 total
冷藏caching需要2.4秒 – 稍长一些,但不是太糟糕。 工作副本中有69,000个文件。
一般来说,随着资源库的增长,你可以期待Git和Mercurial都会变慢。 操作的复杂程度不同: hg status显然是O ( 工作副本中的文件数量 ), hg commit具有hg status的复杂度加上O( 更改文件的数量 )。 像hg cat这样简单的命令在文件数量和变更集数量方面具有O(1)的复杂性–Mercurial能够在不变的时间重build任何版本的文件。
我从来没有使用过HG,但Facebook最近发了一篇关于他们的Git回购速度放缓的文章。 我认为他们的问题是他们所有的“应用程序”都在一个回购
http://thread.gmane.org/gmane.comp.version-control.git/189776
对于那些试图帮助他们的人来说,这是值得一读的