Merging tags?
Andrew Bennetts
andrew.bennetts at canonical.com
Wed Feb 2 22:37:27 UTC 2011
Eli Zaretskii wrote:
> I installed bzr 2.2.3 a few days ago, and I noticed that when
> committing to a remote repository, it sometimes shows this status
> message:
>
> Merging tags to master branch
>
> What does that mean? What "tags" does it merge, and why?
When you commit in a bound branch (or heavyweight checkout) there are
two separate branches involved: the master branch (i.e. the one you did
'bzr checkout' of) and a local branch. The local branch is usually a
copy of the master branch but it can be out of date or even diverged
from it (if you've done 'bzr commit --local'), so part of the work 'bzr
commit' does is about dealing with that: e.g. noticing that the master
has more recent commits and telling you to run 'bzr update'.
But there's a little bit more to a branch than just the revision
history; branches also have tags (see the 'bzr tag' and 'bzr tags'
commands). In 2.2.3 we fixed a bug where changes to the tags in the
local branch weren't propagated to the master.
One affected scenario that springs to mind is doing 'bzr merge' followed
by 'bzr commit' in a checkout wasn't causing tags added by 'bzr merge'
to be propagated, contrary to expectations. That's now fixed.
So now bzr merges the set of tags when you commit in a checkout, which
basically involves fetching the set of tags from the master branch, and,
if any changes need to be made, updating that set. This step already
occurs during other operations like push and pull, although I'm not sure
those operations take care to announce the fact in their progress
reporting.
Perhaps reporting that step is sharing a bit too much unimportant detail
with the user? It is arguably part of “Uploading data to master branch”.
What do you think?
-Andrew.
More information about the bazaar
mailing list