Re: git-scm.com
- From
Kevin Ballard <kevin@sb.org>
- Date
- Jul 31, 2008, 20:19 UTC
- Message-ID
- <2F33BB4E-C726-4405-8185-2B573ED7A3BA@sb.org>
- In-Reply-To
- <489206E4.2030901@freescale.com>
On Jul 31, 2008, at 11:39 AM, Jon Loeliger wrote:
Show 15 quoted lines
> Tom Werner wrote: >> >> The problem is that I'm only a casual C coder. It takes me a while to >> figure out what's going on in the git source. We needed a way to >> serve >> public git repositories from a hashed directory structure (e.g. >> /a/b/c/user/repo.git) and we needed it fast. > > I'm not exactly sure what you mean by "hashed directory structure", > but I suspect that your goal is some form of virtualized hosting > that allows for directory names to be dynamically constructed with > a component that appears to be the user name. > > Wouldn't the --interpolated-path ability of git-daemon either > directly or with minor modifications directly support that?
Tom, correct me if I'm wrong, but my understanding of this is that, with GFS, they were running into the problem of too many dirents in one directory, thus causing lots of stability problems (GFS has a far lower limit than other filesystems in this regard). So the GitHub guys had to switch to a directory sharding structure (similar to how the git objects db uses the first 2 characters of the hash as the dir name) to split this up and keep the numbers manageable. However, they still had to support the old git://github.com/user/project.git paths.
-Kevin Ballard
-- Kevin Ballard http://kevin.sb.org kevin@sb.org http://www.tildesoft.com