Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
Adam Shand wrote: > Hey. > > I'm getting reports from one of our developers that the keyword "$Name$" > isn't expanding correctly since we moved from our Unix CVS server to > CVSNT. We're having this problem with an older pre-2.0 release and with > 2.0.4 (just upgraded today). > $Name$ is misleading... In most cases it is never expanded - I'll quote from one of the cvs developers below... summary: The keyword is useless for normal use and is only for use with 'export'. -- snip-- > What version of CVS handles the $Name$ expansion? CVS 1.10 seems to > recognize $Name$, but not expand it correctly? $Name$ is only expanded when you check out or export, a revision using its tag. If you check out a revision using a version tag, the tag is made sticky, which is usually useless. The primary use for $Name$ is seem so to be track files that were exported with cvs export and are thus outside of the context of the version control system. (Indeed, such keywords are useless in files that are within the context of the version control system). Thus if you were making a source code release, you might do something like cvs export -r release_1_10 myproject The export command makes it mandatory to specify a revision argument. > $Name$ is getting expanded to " ", even though the sticky tag is > "foobar"? The sticky tag in this case is a branch tag, not a version tag. A branch tag does not identify a particular version (though in some contexts it means ``the head version on this branch''). If it were expanded inside $Name$ it would not tell the reader anything, other than that the code came from some point on the specified branch. The intent of $Name$ is to pin down the revision exactly (assuming nobody moves or deletes the tag).