clarification on git, central repositories and commit access lists

Linus Torvalds torvalds at
Mon Aug 20 19:54:18 BST 2007

On Mon, 20 Aug 2007, Linus Torvalds wrote:
> This is one of the big advantages of true distribution: you can have that 
> kind of "central" tree that does integration, but it doesn't actually have 
> to integrate the development "as it happens". In fact, it really really 
> shouldn't. If you look at my merges, for example, when I merge big changes 
> from somebody else who actually maintains them in a git tree, they will 
> have often been done much earlier, and be a series of changes, and I only 
> merge when they are "ready".

Btw, to see this in another light: as an example of a git tree that merges 
those same branches, but *before* they are ready, just look at the -mm 

Now, Andrew actually ends up exposing the end result not as a git tree, 
but as patches, but what he actually *does* is to:

 - get my git tree
 - merge in about 30-40 other git trees from other developers (not all of 
   which necessarily have actual development on them at any particular 
 - then merge in his own patch list
 - expose it all as the -mm patch series

So this is an example of how you actually have a totally separate, and 
still fairly central (the -mm tree is certainly now unknown outside of the 
core developer circles) tree, and where git is a big part in making a 
central "experimental" tree that is separate from my own central 
"development" tree.

Also, it's an example of why centralization is bad: different people and 
entities have different intents. You could *not* reasonably do something 
like this with a centralized SCM like SVN.


More information about the kde-core-devel mailing list