From: Linus Torvalds Date: Mon, 12 Jun 2006 19:17:37 GMT Subject: Re: svn to git, N-squared? Message-ID: In-Reply-To: On Mon, 12 Jun 2006, Yakov Lerner wrote: > > Is this related to 1-level dir tree for objects (12/object) > vs 2-level dir tree (12/34/object) ? Does git employ more levels > for object tree for large projects ? The "more levels" approach was certainly an option early on, when we discussed how the objects should be spread out. It was basically made a non-issue by the pack-files. These days, the rule is really more along the lines of "if you ever have more than a few thousand files, you've not repacked properly". The git-svnimport script obviously doesn't do it right, but it should be trivial to fix. For the git cvsimporter, the fix was literally to just do $commitcount++; .. if (($commitcount & 1023) == 0) { system("git repack -a -d"); } when committing and that was it. It doesn't get much simpler than that, but the svnimporter just hasn't done it yet. Linus