[MERGE] Clean up push, fixes bug #259275

Aaron Bentley aaron at aaronbentley.com
Fri Aug 29 19:51:33 BST 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi all,

This patch updates the push code to allow automatic upgrades when
- --stacked is specified.  In the process, there's a lot of clean up.

I found that BzrDirPreSplitOut.clone isn't being used anywhere, because
I accidentally broke it, and it passed the test suite.  So I removed it,
causing such classes to use the generic clone implementation.

All BzrDirs share a common clone_on_transport implementation already,
and this is the main way cloning is performed.  By adding a stacked_on
parameter to clone_on_transport, we are able to reuse the format upgrade
code in cloning_metadir().

Because of the bizarre irregularities in the PreSplitOut formats, I had
to update the WorkingTree so that create_tree actually does create a tree.

With this patch, branch stacking policies should be fully functional,
without unduly upgrading formats.

I still feel sprout and clone need a major overhaul, though.  There's
still a lot of duplicate or awkward code.

Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFIuEU10F+nu1YWqI0RAhubAJ46sJb7hYAU2yNWFFl6edFVDWhPcgCfef9y
K6wzW/hzacfrwRtAow47Cns=
=VV7l
-----END PGP SIGNATURE-----
-------------- next part --------------
A non-text attachment was scrubbed...
Name: push-3672.patch
Type: text/x-diff
Size: 21280 bytes
Desc: not available
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20080829/2cd7f3c2/attachment-0001.bin 


More information about the bazaar mailing list