只要你在工作目录中编辑源代码,你可以随时使用cvs status和cvs log命令了解文件的状况。一旦你从开发环境中导出(export)了这些文件,将很难识别这些文件的版本。
cvs提供一种关键字替换(keyword substitution),或者叫作关键字扩展(keyword expansion)机制来帮助识别这些文件的状况。在文章中嵌入$keyword$和$keyword:…$形式的字串,以后在获得文件新版本时将自动被$keyword:value$字串所替代。
以下列出关键字:
提交该版本的用户登录名。
该版本被提交的日期与时间(UTC)。
标准的header包括rcs文件的全路径,版本号,日期(UTC),作者,状态,加锁人(如果有锁)。在使用cvs中通常不用加锁。
除了rcs文件不包括路径,其余和$Header$相同。
检出的标签名。该关键字只在检出时显式加上标签时扩展。比如,执行cvs co -r first命令,关键字扩展为Name: first。
锁定版本的用户登录名(除非使用cvs admin -l加锁,一般此项为空)。
log信息在提交时提供,前面是一个header包括rcs文件名,版本号,作者,日期(UTC)。已有的log信息不会被替换。相反,新log信息将插在$Log:…$后面。每一新行前面使用同样的$Log关键字前的字串。例如,一个包含下列内容的文件:
/* Here is what people have been up to: * * $Log: frob.c,v $ * Revision 1.1 1997/01/03 14:23:51 joe * Add the superfrobnicate option * */ |
新增的行扩展$Log关键字后前面也会带有 * 字符。与以前版本的cvs和rcs不同,rcs文件中的不再使用。$Log关键字将会在源文件中累积log纪录。有些原因可能会造成问题[$Log$关键字的问题]。
不带路径的rcs文件名。
该文件的版本号。
rcs文件的完整路径。
版本的状态,可以通过使用cvs admin -s命令设置,参看[admin options 在 附录 A]。