[MERGE] Explain revision/range identifiers
Aaron Bentley
aaron at aaronbentley.com
Fri Sep 5 03:05:59 BST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Robert Collins wrote:
> It doesn't really matter if we're
> strictly changeset orientated or not: the diff and merge commands *act*
> as if we're using half open ranges. merge X..Y, when X is not already in
> the local tree, does a cherrypick and *does not include* content unique
> to X. Its half open.
It does not include content that was added before X, and it does not
include content that was added after Y. It is symmetrical.
diff -r 2..4 does not mean "show me the changes introduced in 3 and 4".
It means "show me the difference between 2 and 4".
If we were to say "show me the changes introduced in 3 and 4", that
really means "show me the difference from 2..3 and the difference from
3..4", because revisions aren't changesets. "introduced in" has no
meaning without reference to a parent revision.
Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFIwJQH0F+nu1YWqI0RAkPdAJsFsrIPpiOdttMqRKfE3dn5Tmvm4gCfSEKM
wVWZGWD0xhqwtFHUj28OGDQ=
=M8Ef
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list