下一个: Using keywords, 上层: Keyword substitution
$
Author$
$
CVSHeader$
注意,该关键字是新加到 cvs 的,假如旧的文件中有 $CVSHeader$ 并有其他意义,会带来一些问题。
可以在 CVSROOT/config 中用 KeywordExpand=eCVSHeader
来排除此关键字。
参阅 Configuring keyword expansion。
$
Date$
$
Header$
$
Id$
$
Header$
相同。
$
Name$
cvs co -r first
命令时,关键字扩展为 `Name: first'。
$
Locker$
cvs admin -l
加锁)。
$
Log$
$
Log:...$
之后。
默认,每一新行前面使用同样的 $
Log$
关键字前的字符串,
除非在 CVSROOT/config 里面设置 MaxCommentLeaderLength
。
例如,文件文件包含:
/* 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 文件中的不再使用 comment leader。
$
Log$
关键字将会在源文件中累积日志纪录。有些原因可能会造成问题。
如果 $
Log$
关键字的前缀超出 MaxCommentLeaderLength
长度,
CVS 将跳过关键字扩展,除非在 CVSROOT/config 中设置 UseArchiveCommentLeader
,
并且有 `comment leader' 设置在 RCS archive 文件,使得 comment leader 替代使用。
为了了解更多关于 RCS archive 中设置 comment leader,参阅 admin. 了解更多默认的
$
Log$
替换配置,参阅 config.
参阅 Log keyword.
$
RCSfile$
$
Revision$
$
Source$
$
State$
cvs admin -s
命令设置状态—参阅 admin options。
Local keyword
LocalKeyword
选项可以被用作其他关键字的别名: $Id$,
$Header$, or $CVSHeader$。
例如,在 CVSROOT/config 中包含 LocalKeyword=MYBSD=CVSHeader
这样一行,带有 $MYBSD$ 的文件会像 $CVSHeader$ 一样被扩展。
如果 src/frob.c 文件包含这个关键字,像下面这样:
/* * $MYBSD: src/frob.c,v 1.1 2003/05/04 09:27:45 john Exp $ */
许多仓库使用 “local keyword” 这类特性。
cvs 的一个旧补丁提供 LocalKeyword
特性,它们使用称为“custom tag”或“local tag”特性的 tag=
选项。
它被用于它们称为 tagexpand=
选项。
在 cvs 中另一个选项为 KeywordExpand
。
参阅 Configuring keyword expansion。
知名的项目中有这些例子: $FreeBSD$, $NetBSD$, $OpenBSD$, $XFree86$, $Xorg$.
使用它的优点在于可以使用自己的版本信息而不破坏上面版本(它们可能使用不同的 local keyword 或标准关键字)。 使得 bug 报告可以更恰当地识别第三方的错误源,以及减少导入新版本时产生的冲突数。
除 local keyword 之外所有的关键字都可以在 CVSROOT/config 文件中用 KeywordExpand
选项停用—参阅 Configuring keyword expansion 获得详细信息。