on moving tags
John A Meinel
john at arbash-meinel.com
Tue May 17 17:10:05 BST 2005
Aaron Bentley wrote:
> John Yates wrote:
>
> | I find "snapshot name" better captures the notion of
> | a tag and its intended role. Similarly I am partial to the "line of
> | descent" phrase as opposed to "branch".
>
> In bzr parlance, 'revision' is the term for an addressable snapshot. So
> 'revision tag' (to mingle Arch and CVS terminology!) would suit me fine.
> ~ 'Tag' connotes something added to an object to describe it, while
> 'name' connotes something permanent and integral, so I think tag is the
> better term (and less confusable with the permanent 'revision id').
>
I agree with "revision tag".
> I agree that there is an unfortunate overlap between filesystem
> heirarchy terminology and geneological terminology. As a result, we
> have 'branches' and inside those branches, we have multiple 'revision
> trees'.
>
Do we actually have trees inside of bzr? I thought each branch was just
a single line of development. Which may be similar to other branches.
> More precise terms like 'line of descent' could be listed as alternates,
> but we must use existing jargon where the meaning is reasonably similar.
>
Is it 'line of decent' or 'line of development'. If people understand
the former, no problem, but for me the later is more obvious. Decent
sounds more like tracking what branches you came from/ancestry/etc.
> | At the very least I hope that bzr eschews within its CLI CVS's
> | conflation
> | of "branch tags" and "revision tags".
>
> The interesting thing is, you can represent a revision tag as a locked
> branch. So how much conflation is that, really?
Well, a branch is somewhere that development is done. So a locked branch
isn't much of a branch. And since a tag is really just a name somewhere
along the branch, I don't think it makes sense to call it a branch.
Arch was pretty foolish in how it used the term "tag". It really was
branch, I think it just grew up from tag, and was never fixed (until baz).
>
> Aaron
But to respond to the original poster, that is pretty much what I was
mentioning. There is a collection of files named by tagname, inside of
which is a listing of what revisions they pointed to. I think you need a
little bit more meta-information, so that they also contain dates/etc
for the ability to say "give me the tag as it was defined on this date".
Because I think '.' should be valid in the tag name itself, I think we
can once again turn to our handy ':' character. So tagname:1,
tagname-10.1.2:2 are valid values, indicating that you want a specific
version of the tag.
I also think unifying it with the revision numbers is fine. So you could
do "bzr log -r tag:rev-1.3.2". With my revision range patch, you could
also do:
"bzr log -r :tag:rev-1.3.2" to get all of the logs up to the tag, and
you could do "bzr log -r tag:rev-1.3.2:".
I don't really like overloading the : indicator too much. For instance
"bzr log -r tag:rev-1.3.2:20" is that saying give me the twentieth
version of tag rev-1.3.2, or is it saying give me the logs between the
tag and revision 20.
But I really like "bzr log -r -5:" to say give me the last five revisions.
Is there another character we can use to indicate sub-tag versions?
John
=:->
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 253 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20050517/f65450d3/attachment.pgp
More information about the bazaar
mailing list