[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Subversion "labels" vs. "tags"

From: Brad Appleton <brad.appleton_at_gmail.com>
Date: 2005-05-26 06:50:05 CEST

David Weintraub wrote:
> Brad Appleton has brought up an interesting point in that there are
> maybe two separate concepts of labels/tags. Brad points out that there
> is labeling for marking files and their versions for a particular
> release vs. labeling as an alias for a configuration created by the
> version control system. In that case, the argument could be made that
> a lookup table for labels vs. revision numbers is really the way to
> implement labels, and that "tags" should be used when a user wants to
> mark a particular release.

Thanks David! I thought of another way to describe the difference
between the two.
* A "revision alias" is a binding of a name to an existing
configuration's identifier
* A "label" is creating a (possibly evolving) configuration and it's

Another potentially interesting thought is that, given the above, a
"label" may be used as a branch-point. A revision-alias may not.

Sometimes it helps me to think of differences between what varies and
what stays the same.

* With a revision-alias, if I missed something I really should have
included, I "commit" a new configuration, and I move the binding of the
existing name from the previous revno to the new revno.

* With a label implemented using "copy", if I missed something I really
should have included, I commit a new configuration, and the "name"
automatically tracks with the new "latest/current" configuration.

In other words, if I need to make the name refer to a revised/corrected
"configuration", then:
- with a revision-alias, I keep the same name and change which
configuration it is bound to.
- with a "label, I keep the binding between the name and the copy, and I
change the content of the copy.

One approach keeps the "content" the same and varies the context; the
other approach keeps the "context" and varies the content.

Brad Appleton <brad@bradapp.net> www.bradapp.net
    Software CM Patterns (www.scmpatterns.com)
    Effective Teamwork, Practical Integration
"And miles to go before I sleep" --Robert Frost
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu May 26 06:50:50 2005

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.