-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 3/22/2011 3:25 PM, Barry Warsaw wrote: > On Mar 22, 2011, at 12:52 AM, Éric Araujo wrote: > >> Bazaar apparently has a notion of mainline whereas Mercurial believes >> that all changesets are created equal. The tools are different. > > I'm curious: what are the benefits of the Mercurial model? > > -Barry >
- From discussions in #bzr, I would say the primary complaint to our model is that people feel it means that not all revisions are created equal. Though honestly, that is true. Getting a revision into Linus's kernel tree is not the same as getting it into my own branch of the kernel. I do remember discussions where people felt bad that after integrating someone else's work, by default it showed their name, rather than the names of the people who had done the actual work. (Though you could always use --author if you really wanted to change the name on that commit.) There is a technical argument. A merging B should be idempotent to B merging A. And certainly, the file-content should be the same after either operation. But as I mentioned in the other email, Barry merging my work and committing it to the hg.python.org/cpython branch is very different socially than me merging cpython's branch. So bzr is somewhat distinguishing "things done on this branch" from "things done in other branches that I have included into this branch.". Simplicity. If you enforce the mainline concept with "append_revisions_only=True" on your trunk branches. Then people who try to do: cd my-work merge trunk && commit push trunk Will be blocked. While if you did cd trunk merge my-work && commit push trunk It would succeed. If a tool doesn't give you a benefit from maintaining a mainline, there is overhead in preserving it. If your tool defaults to fast-forward merging, it is also really hard to get the behavior. (git does this with a config option to disable it, bzr has it as an option to merge [defaulting to off], and I'm not sure what Mercurial's default is.) John =:-> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Cygwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk2Ivi4ACgkQJdeBCYSNAAOhzwCg0tD1KdR53fH7OEzhom0IaPOL niYAn2KsY2jPLJmbXWf8sIauMW+y2hHC =NFdA -----END PGP SIGNATURE----- _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com