下一个: , 上一个: checkout, 上层: CVS commands


A.10 commit—将文件提交到仓库

当你需要将工作目录里面的修改合并到源码仓库时,使用 commit 命令。

如果你不指定具体的文件,当前工作目录里面的文件,经过检验,都会被提交。 commit 会谨慎地在仓库中修改那些真正做了变更的文件。默认情况下(或你特别 指定了 `-R' 选项),在子目录中的也要检查,如果它们有变更也会被提交; 你可以使用 `-l' 选项让 commit 只针对当前的目录。

commit 会校验选择的文件已经更新到源码仓库的当前修订版; 如果有文件需要 首先使用 update (参阅 update) 更新到当前版本,它会通知你, 然后不做提交退出。commit 不会为你调用 update 命令, 而是让你自行处置。

如果就绪,会打开一个编辑器用来输入日志消息,用来写到一个或多个日志程序 (参阅 modules 和 参阅 loginfo) 并将其放到仓库的 rcs 文件。日志消息 可以通过 log 命令看到; 见 log。你也可以在命令行上用 `-m message' 选项指定日志消息,以避免打开编辑器,或者用 `-F file' 来指定包含日志消息的文件。

commit 时,在仓库的 rcs 文件里面会放入唯一的 commitid。同时提交的 文件是相同的 commitid。使用 logstatus 命令可以查询 commitid; 见 log, File status