下一个: , 上一个: commit files, 上层: Trigger Scripts


C.3.4 Commitinfo

commitinfo 文件定义了 `cvs commit' 有关的执行成。这些程序在提交之前 检查那些被修改、添加和删除的文件真正准备好了提交。例如,这可以用来校验修改过的 文件遵循你站点上的编码实践标准。

commitinfo 文件有脚本 hook 的标准形式(参阅 Trigger Scripts),每一行 是一个正则表达式和所执行的命令。它只支持 DEFAULT 关键字。

除了通用格式化字符串以外(参阅 syntax),commitinfo 还支持:

{s}
一个要提交的文件名字列表

当前,如果没有指定格式化字符串,默认的 ` %r/%p %{s}' 字符串将在替换 发生前追加到命令行模板,但该特性已废弃。保留的目的只是为了新 cvs 应用程序 与旧仓库保持兼容。更新的一些信息,参阅 Updating Commit Files

第一行中的正则表达式匹配将要使用的仓库里面的目录。如果命令返回非零值,提交将中止。

命令会在用户将要修改的文件的根工作空间里执行,或者在服务器上的工作空间副本 (参阅 Remote repositories)。如果文件被删除,在当前目录下将不会有文件副本。

注意,仓库目录和对应的 Attic (参阅 Attic) 目录都要检查,以寻找要提交文件的 对应档案。提交时的许多信息,包括目的分支,提交消息,和指定的命令行参数,对命令都 不可用。