下一个: , 上一个: Avoiding substitution, 上层: Keyword substitution


12.4 替换模式

每一个文件保存有一个默认的替换模式,每个文件的工作目录副本也有一个替换模式。 前者通过用 `-k' 选项的 cvs addcvs admin 命令设置; 后者用 `-k' 或 `-A' 选项的 cvs checkoutcvs update 命令设置。 cvs diff 命令也有一个 `-k' 选项。 参阅 Binary filesMerging and keywords 获得这些例子。

可用的模式为:

`-kkv'
使用默认形式产生关键字字符串,如。 $Revision: 5.7 $ 对于 Revision 关键字。
`-kkvl'
类似 `-kkv',如果指定的版本现在被加锁,还需要插入加锁者的名字。 锁名与使用的 cvs admin -l 命令相关。
`-kk'
在关键字字符串中只生成关键字名;忽略其值。 例如,对于关键字 Revision,生成的字符串是 $Revision$ 而不是 $Revision: 5.7 $。 这一选项在比较版本差异时忽略关键字替换的影响非常有用(参阅 Merging and keywords)。
`-ko'
生成旧的关键字字符串,在工作中的文件与检入前一样。 例如:对于关键字 Revision,如果检入前字符串是 $Revision: 1.1 $,则生成的字串与以前相同而不会是 $Revision: 5.7 $
`-kb'
类似 `-ko' 选项,并阻止换行字符的转换,这种转换是因为换行符在仓库(只是换行) 的形式与客户机使用的操作系统不同。 对有些系统,比如 Unix,换行符就是行中止符,这样就和 `-ko' 没什么区别。 关于二进制文件的更多信息,参阅 Binary files。 在 cvs 版本 1.12.2 及之后的 `-kb',不会被在命令行中使用 `-k' 选项的 cvs addcvs admincvs import 跨越。
`-kv'
只为关键字符串生成关键字值。 例如,对于关键字 Revision,生成的字串是 5.7,而不是 $Revision: 5.7 $。 这种方法有助于一些难以从 $Revision: $ 这样的字符串中剥去关键字分界符的编程语言生成文件。 但是,一旦删除关键字名,以后将不能执行关键字替换,所以应小心使用该选项。

通常将 `-kv' 选项与 cvs export 命令配合使用 —参阅 export。 但请注意,它不能正确导出的文件中的二进制文件。