Repository topology
Jens Alfke
jens at mooseyard.com
Wed Aug 29 09:59:33 CDT 2007
On 29 Aug '07, at 3:02 AM, Paul Sargent wrote:
> I'm fast coming to the conclusion that the randomly connected
> distributed model just doesn't scale, but because the tool is
> distributed you have the choice of topology that works best for you.
That sounds right. But it does abide by Alan Kay's old dictum that
"simple things should be simple (and complicated things should be
possible)", more so than the centralized model.
> Maybe that'll be a tree, like Linus uses for the Linux Kernel. Maybe
> (shock, horror) it'll be a centralised repository. It'll probably
> end up being some hybrid.
And it turns out a single centralized repository isn't the best model
even for large commercial projects. Sun's long had a complex
hierarchical system that I thought worked very well, while I was
there. You have your personal repository for your working tree, like
Mercurial; your team has a working repository that the engineers push
to; that repository pushes to a stable repository after you do some
testing and ensure the build works; that pushes to a larger repository
for the larger project that your team contributes to (the JDK, in my
case.)
> The main thing is to actually think about it, because if you let it
> grow naturally it'll be chaos.
As is true of so many things in software engineering :)
--Jens
More information about the Mercurial
mailing list