CVS Keywords are dollar-sign delimited strings that CVS interprets and automatically expands. This is generally Good Behavior for text files (like html files or C source code), but is really Bad News for binary files which might happen to have a keyword coincidentally embedded in the data.To work around that, you can add a binary file to the repository with:
or you can change it after-the-fact with:% cvs add -kb filenameAnyway, on with the keywords.% cvs admin -kb filename
Keyword Explanation $Author: $The user responsible for a change.
$Author: markd $$Date: $Date and time of the change, in GMT.
$Date: 1999/12/23 21:59:22 $$Header: $A collection of information: full path to the RCS file, revision number, date/time of last change (GMT), author, state, and locker. (lockers are a rare occurance in CVS)
$Header: /cvsweb/cvs-guide/keyword.html,v 1.3 1999/12/23 21:59:22 markd Exp $$Id: $Like $Header: $, but without the path to the RCS file.
$Id: keyword.html,v 1.3 1999/12/23 21:59:22 markd Exp $$Log: $Inserts the cvs log message. This behaves differently than other tags in that it just inserts new information after the keyword. It doesn't replace the keyword or modify existing text.
$Log: keyword.html,v $
Revision 1.3 1999/12/23 21:59:22 markd
dummy change to bump up revision.Revision 1.2 1999/12/23 21:59:15 markd
dummy change to bump up revision.Revision 1.1 1999/12/23 21:58:35 markd
initial revision$Locker: $The user who has a lock on this revision (usually nobody)
$Locker: markd $$Name: $If a sticky tag is in effect, this is the name of that tag. Otherwise blank.
$Name: guide_release_1 $$RCSfile: $Name of the RCS file in the repository
$RCSfile: keyword.html,v $$Revision: $Revision number
$Revision: 1.3 $$Source: $Full path to the RCS " ,v" file in the repository
$Source: /cvsweb/cvs-guide/keyword.html,v $$State: $State of this revision.
$State: Exp $
cvs admin -kb'd, so it doesn't show the cvs $Id: $ line)