Go to the previous, next section.
Externally, branch numbers consist of an odd number of dot-separated decimal integers. See section Revision numbers. That is not the whole truth, however. For efficiency reasons CVS sometimes inserts an extra 0 in the second rightmost position (1.2.3 becomes 1.2.0.3, 8.9.10.11.12 becomes 8.9.10.11.0.12 and so on).
CVS does a pretty good job at hiding these so called magic branches, but in at least four places the hiding is incomplete.
cvs status
in vanilla CVS 1.3. This is
fixed in CVS 1.3-s2.
cvs log
. This is much harder to fix, since
cvs log
runs rlog
(which is part of the
RCS distribution), and modifying rlog
to
know about magic branches would probably break someone's
habits (if they use branch 0 for their own purposes).
cvs log
.
cvs
admin
.
You can use the admin
command to reassign a
symbolic name to a branch the way RCS expects it
to be. If R4patches
is assigned to the branch
1.4.2 (magic branch number 1.4.0.2) in file
`numbers.c' you can do this:
$ cvs admin -NR4patches:1.4.2 numbers.c
It only works if at least one revision is already committed on the branch. Be very careful so that you do not assign the tag to the wrong number. (There is no way to see how the tag was assigned yesterday).
Go to the previous, next section.