[RFC] make checkouts as much like bound branches as possible
Aaron Bentley
aaron.bentley at utoronto.ca
Sun Mar 19 18:18:16 GMT 2006
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
True checkouts and bound branches are very similar in the UI, and we've
tried to have them exhibit the same behavior wherever it makes sense.
But since they are implemented quite differently, they exhibit different
bugs and require different code paths to get the same behavior.
I'd like to propose that checkouts have a special proxy branch, a
CheckoutBranch, whose revision-history operations differ from the
proxied branch. CheckoutBranch.get_bound_location and
CheckoutBranch.get_master_branch would both refer to the proxied branch.
~ CheckoutBranch.unbind and CheckoutBranch.bind would throw.
Aside from this, all other operations would pass through to the proxied
branch.
This would mean
- - fewer codepaths
- - more behavioral consistency between bound branches and checkouts, more
easily
- - less confusion for developers about how bound branches/checkouts are
supposed to behave.
- - all code that expects revision-history to be the local tree's revision
history (e.g. the revision spec code) will become correct
- - James Blackwell can truthfully say 'A checkout is a branch'.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFEHaBo0F+nu1YWqI0RAiBmAJ94iMKqwiOsq0ghbJ1lfzRthbjLdQCfTrVi
cs29yMjy9g1IxojBOuXv4tw=
=qee9
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list