Peter Memishian writes: > > Is there a reason Mercurial allows one to pull multiple heads so > effortlessly? I ask because it seems like this is a recipe for madness. > In my particular case, my parent repo had multiple heads because a team > member had forgotten to merge.
That sounds like the problem right there. Don't do work directly inside the project gate itself -- ever. It wasn't right to do with Teamware, and it's not right to do with Mercurial. Instead, pull to a child workspace, do your merge, and then push the results when done. It won't let you push when you forget to merge. > Not realizing this hadn't been done, I > then did a pull into my repo and ended up with *three* heads (two from the > parent, and one from my own line of development). It then "helpfully" > advised me to pick which of the heads I wanted to merge, which seems like > it would only mess things up further. > > It'd seem safer to have "hg pull" prevent a pull if the revision being > pulled has multiple heads, unless -f is specified. > > Thoughts? 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. -- James Carlson, Solaris Networking <james.d.carlson at sun.com> Sun Microsystems / 35 Network Drive 71.232W Vox +1 781 442 2084 MS UBUR02-212 / Burlington MA 01803-2757 42.496N Fax +1 781 442 1677