tags vs branches in a repo
Martin Pool
mbp at canonical.com
Thu May 11 06:26:50 BST 2006
Please poke this straw man:
We now have repositories which can contain branches; branches are just
directories containing a small number of control files. It's cheap and
(at least relatively) fast to pull or merge between two branches in a
repository. You can, with a plugin, list all the branches.
There are proposals for tags but they are either a bit limited
(unversioned tags) or have not quite the right semantics (tags created
by new versions) or introduce substantially more complexity (meta-branch
revisions).
How about instead doing something similar to arch and svn by just making
a practice of using branches within a repository as tags. To create or
update a tag you can pull, pull --overwrite, or merge onto it[*]. This
makes tags versioned, but without introducing a new time dimension. And
we don't have to do a new feature, we can just improve the one we
already have.
[*] (Which suggests we should have a merge --overwrite too, which overwrites
the tree with the merge source.)
I can think of some drawbacks, which I'll send in a separate post; I'll
just float this for now.
--
Martin
More information about the bazaar
mailing list