Skip to content


cvs 关键字列表

来自http://man.chinaunix.net/develop/cvsdoc_zh/

这是关键字列表:

$Author$
检入该版本的用户登录名。

$CVSHeader$
标准的头部(类似去掉 CVS 根的 $Header$)。包括 rcs 文件的全路径、版本号、日期(UTC)、作者、状态、加锁人(如果有锁)。在使用 cvs 中文件通常不用加锁。
注意,该关键字是新加到 cvs 的,假如旧的文件中有 $CVSHeader$ 并有其他意义,会带来一些问题。可以在 CVSROOT/config 中用 KeywordExpand=eCVSHeader 来排除此关键字。参阅 Configuring keyword expansion。

$Date$
该版本被检入的日期与时间(UTC)。

$Header$
标准的 header 包括 rcs 文件的全路径、版本号、日期(UTC)、作者、状态、加锁人(如果有锁)。 在使用 cvs 中文件通常不用加锁。

$Id$
除了 rcs 文件不包括路径,其余和 $Header$ 相同。

$Name$
检出此文件所用的标签名。该关键字只在检出时显式加上标签时扩展。比如,运行 cvs co -r first 命令时,关键字扩展为 `Name: first’。

$Locker$
锁定版本的用户登录名(如果没有加锁此项为空,一般就如此,除非使用 cvs admin -l 加锁)。

$Log$
日志信息在提交时提供,前面是一个 header 包括 rcs 文件名、版本号、作者、日期(UTC)。已有的日志信息不会被替换。相反,新日志信息将插在 $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$
不带路径的 RCS 文件名。

$Revision$
该文件的修订版本号。

$Source$
RCS 文件的完整路径。

$State$
赋予版本的状态。可以通过使用 cvs admin -s 命令设置状态—参阅 admin options。

Local keyword
CVSROOT/config 文件中的 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 获得详细信息。

Posted in Others, 技术.


No Responses (yet)

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.