[merge] tags in repository
John Arbash Meinel
john at arbash-meinel.com
Thu Jan 25 20:49:52 GMT 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Jan Hudec wrote:
...
> When unique root IDs are introduced, this would even be easy to check, since
> histories are disjoint iff they have different root id.
Actually this isn't true because you can merge projects that have
different root ids. Ie:
lib1
lib2
commandline/
commandline/
lib1/
lib2/
Where I decided to merge lib1 and lib2 into the project commandline. We
are calling this "by-value nested trees". Since you essentially copied
the *value* of lib1 into commandline. (versus "by-reference" which would
just store a reference to lib1).
Anyway, you can already do this with bzr today, and we have done it a
few times with the bzr codebase (bundles used to be a 'changeset'
plugin, uncommit was a plugin, etc).
Now, you can argue that the meta-project 'commandline' doesn't need to
see the tags for the sub-projects lib1 and lib2.
But I did want to point out that it might be a little more involved than
you might think.
>
>> I also want to see who created the tag, perhaps move it myself if I see
>> it is the wrong version and so on. In a distributed development
>> environment anyone should be able to do this and when you merge you have
>> to resolve the conflicts with the tags too. I know tags don't change
>> often but people make mistakes and version control allows one to fix
>> that and record why you think it needed to be changed. The fact that
>> tags don't change often means that resolving conflicts in tags will be a
>> rare event so it is not a problem. But just because they don't change
>> often doesn't mean they should not be versioned IMHO...
>
> I would vote for versioned (independently of revisions) tags too.
>
I agree that versioned, independent from revisions, tags are good. There
are still questions about how a Branch knows what tags it has available.
And Martin has a reasonable concern about complicating the mental model
that users have to understand.
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFFuRfwJdeBCYSNAAMRAhOIAJ9blH+K7idfsHpdfiH857ULKDWcUwCeP02c
9o7TIEJQONMJTD+rypXqQmU=
=CDbG
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list