At what point does the push model degrade?

Bryan O'Sullivan bos at serpentine.com
Fri Nov 16 18:47:29 UTC 2007


Ezra.Smith at bentley.com wrote:

> This is mostly where I'm concerned. I don't really know what "sufficiently large" is, 

 From experience, I can fairly well guarantee you that on a large code 
base, where everyone's working on a single branch, the fun is about to 
begin.

It sounds, from your desciption of working with CVS, as though many of 
your people are working on nearly independent components.  In that case, 
your merges will most likely be trivial and fast: you could use the 
"fetch" extension to largely automate the process.

The worst that will happen if pushing doesn't scale for you is that your 
history will be cluttered with some extra unneeded merges (you can 
eliminate them from the output of "hg log" using "-M"), and people will 
be frustrated and grumbly (there is no command line option for 
eliminating this).  If the latter occurs, just switch to a mostly-pull 
model.  It's not hard, and it doesn't add significant overhead.

I must say, though, that when I think about a hundred people working on 
a single source base, my antennae start twitching towards managing risk 
by compartmentalising changes, and doing so by developing on multiple 
branches in parallel.

	<b



More information about the Mercurial mailing list