pull --overwrite
Aaron Bentley
aaron.bentley at utoronto.ca
Thu Dec 1 14:47:30 GMT 2005
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
John A Meinel wrote:
> Thanks, I wanted to write a test case and fix that, I'll just use your
> test case.
On the same topic, I think I've got a clearer idea of what pull --pivot
should do;
1. If the local last-revision is a descendant of the remote
last-revision, select the local last revision. If the remote is a
decendant of the local, select the remote. If the branches are
diverged, throw.
2. Create a revision history by starting at the selected revision and
walking the leftmost parents until a parentless revision is reached.
3. Write that to the local revision-history.
The big differences between --pivot and --overwrite are:
- - overwrite may lose commits, but pivot will not
- - overwrite will always copy the remote history to local, but pivot
creates a new history that may differ from both local and remote.
- --pivot and --overwrite are not mutually exclusive; --pivot --overwrite
would be like --pivot, except
- - it would always select the remote revision
- - it would not throw for diverged branches.
Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFDjw0C0F+nu1YWqI0RAur2AJ9H14EEPOM11cTRgEYZ1ddjNMSXVACfcosO
pF082zaWJt8+n0p/UWFOCEY=
=aNey
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list