Hi,
I just tried to download revisor git with this command "git pull http://git.fedorahosted.org/git/revisor master". I have to repeat 4-5 times since it breaks during downloading. The .git folder is about 58MB. After "git gc --aggressive" it becomes only 6MB.
Anyone please run gc on server?
Yuan Yijun wrote:
I just tried to download revisor git with this command "git pull http://git.fedorahosted.org/git/revisor master". I have to repeat 4-5 times since it breaks during downloading. The .git folder is about 58MB. After "git gc --aggressive" it becomes only 6MB.
Anyone please run gc on server?
Perhaps better would be repack. There was a recent thread on the git list and one of the developers pointed out an older mail from Linus where he described gc --aggressive as "mostly dumb" and recommended that using something like "repack -a -d -f --depth=250 --window=250" instead.
http://article.gmane.org/gmane.comp.gcc.devel/94613
On Tue, 2008-08-05 at 23:44 -0400, Todd Zullinger wrote:
Yuan Yijun wrote:
I just tried to download revisor git with this command "git pull http://git.fedorahosted.org/git/revisor master". I have to repeat 4-5 times since it breaks during downloading. The .git folder is about 58MB. After "git gc --aggressive" it becomes only 6MB.
Anyone please run gc on server?
Perhaps better would be repack. There was a recent thread on the git list and one of the developers pointed out an older mail from Linus where he described gc --aggressive as "mostly dumb" and recommended that using something like "repack -a -d -f --depth=250 --window=250" instead.
That's actually a very useful article and the methods/reasons behind it sound quite sane and it could be a useful approach for us.
I'll try this out on one of the smaller repos (a copy of course) and see what happens.
(n.b. I've added f-infrastructure-list to CC's, that's where everyone that manages the hosted server reads :).)
- Nigel
-- fedora-devel-list mailing list fedora-devel-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-devel-list
On Wed, Aug 6, 2008 at 8:37 PM, Nigel Jones dev@nigelj.com wrote:
That's actually a very useful article and the methods/reasons behind it sound quite sane and it could be a useful approach for us.
Agreed. git gc on all repos on an infrequent cronjob is a good idea. But --aggressive is a very bad idea as it throws away delta-chain work that's been done. Specially bad on larger repos as the potential delta pairs to evaluate is much much larger.
cheers,
martin (also a git dev)
2008/8/6 Todd Zullinger tmz@pobox.com:
Yuan Yijun wrote:
I just tried to download revisor git with this command "git pull http://git.fedorahosted.org/git/revisor master". I have to repeat 4-5 times since it breaks during downloading. The .git folder is about 58MB. After "git gc --aggressive" it becomes only 6MB.
Anyone please run gc on server?
Perhaps better would be repack. There was a recent thread on the git list and one of the developers pointed out an older mail from Linus where he described gc --aggressive as "mostly dumb" and recommended that using something like "repack -a -d -f --depth=250 --window=250" instead.
See that. The repack command is so hard to remember, while "git gc" is fast enough and also runs repack, AND the .git folder becomes 6.6MB without --aggressive...
I guess the only problem is git version on server is too old, AFAIK new git will repack automatically when commit or push or before fetch (?)
On Wed, 2008-08-06 at 18:18 +0800, Yuan Yijun wrote:
2008/8/6 Todd Zullinger tmz@pobox.com:
Yuan Yijun wrote:
I just tried to download revisor git with this command "git pull http://git.fedorahosted.org/git/revisor master". I have to repeat 4-5 times since it breaks during downloading. The .git folder is about 58MB. After "git gc --aggressive" it becomes only 6MB.
Anyone please run gc on server?
Perhaps better would be repack. There was a recent thread on the git list and one of the developers pointed out an older mail from Linus where he described gc --aggressive as "mostly dumb" and recommended that using something like "repack -a -d -f --depth=250 --window=250" instead.
See that. The repack command is so hard to remember, while "git gc" is fast enough and also runs repack, AND the .git folder becomes 6.6MB without --aggressive...
git gc, while fast, is not as efficient, we have repos with nearly 100000 objects (anaconda) and while it does a fair job, (and quick - a tenth of the time a git repack does) I do think that a repack would be a good idea on a frequent basis (read bi/tri-monthly).
Of course, like beauty the usefulness is in the eyes of the beholder, and while the majority of repos are very small, there are the few that are over the 100M mark at present. So different needs mean different solutions.
- Nigel
I guess the only problem is git version on server is too old, AFAIK new git will repack automatically when commit or push or before fetch (?)
-- bbbush ^_^