> This sounds to me more like a gate management issue. > > For what it's worth, if you put your project gate on > hg.opensolaris.org, then you'll have no access to the gate except by > hg push/pull, and that'll prevent accidents like that.
I'm well aware of that model -- we started with it. I think it's a good model for larger (in terms of team members) project gates, but it's a poor fit for us. Among other things, it makes everyday sync-ups more tedious (pull from two gates, merge, and push for usr/src, then have a separate procedure for usr/closed -- then repeat this across four layered repos). Really, I found it just plain awful for our workflow, and I wouldn't switch back to it without a compelling justification (e.g., external members on the I-team). Anyway, getting back to my original question: what is the rationale behind Mercurial allowing pulls that would result in more than two heads by default? When would this be the behavior a developer would want by default? -- meem