Репозиторий с 5 ГБ большой, но не слишком большой. Вы не говорите, что 5 ГБ предназначены только для истории, рабочей копии или совокупного числа?
Для сравнения я могу сказать вам, что репозиторий OpenOffice имеет историю 2.0 ГБ (около 270 000 ревизий) и рабочая копия 2,3 ГБ. Mercurial работает нормально с таким размером:
$ time hg status
hg status 0.63s user 0.26s system 99% cpu 0.886 total
С холодным кешем это занимает 2,4 секунды - немного дольше, но не так уж плохо. В рабочей копии 69 000 файлов.
В общем, можно ожидать, что и Git, и Mercurial будут замедляться по мере роста репозитория. Сложность операций различается: hg status
очевидно O ( количество файлов в рабочей копии ), hg commit
имеет сложность hg status
плюс O ( количество измененных файлов ). Простая команда, такая как hg cat
, имеет сложность O (1) по количеству файлов и количеству ревизий - Mercurial может восстановить любую версию файла за постоянное время.
Я никогда не использовал hg, но facebook недавно отправил сообщение о замедлении работы репозитория git. Я думаю, их проблема заключалась в том, что все их «приложения» собраны в одном репо
http://thread.gmane.org/gmane.comp.version-control.git/189776
Это стоит прочитать людям, пытающимся помогите им