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


A.9 checkout—检出用于编辑的源码

创建或更新 modules 指定的工作目录,包含源码副本。使用大多数其他 cvs 命令之前,你必须执行 checkout,这是因为它们大部分操作的是工作目录。

modules 可以是源码目录和文件集合的符号名,或者目录路径,或仓库里面的文件。 符号名在 `modules' 文件里面定义。参阅 modules.

随你指定的模块,checkout 可以递归地创建目录,并将适当的文件放在里面。 你可以在任意时间编辑这些文件(不论是否其他的开发人员也在编辑他们自己的副本); 更新它们以包括源码仓库中其他人员提交的修改; 或将你的修改永久地提交到源码仓库。

注意,checkout 用于创建目录。在 checkout 执行的目录,总会创建 顶级目录,而且通常与指定的模块同名。在 module alias 情况下,创建的子目录也许有 不同的名字,但可以肯定它是一个子目录,并且 checkout 会在解到你私人工作 空间时,显示出每个文件的相对路径(除非你指定了 `-Q' 全局选项)。

checkout 建立的文件属性是可读写的,除非事先给 CVS 指定 `-r' 选项 (参阅 Global options),或 CVSREAD 环境变量 (参阅 Environment variables),或者该文件已被监视(参阅 Watches)。

注意,在一个已经由 checkout 建立的目录里面运行 checkout 目录是允许的。 这类似给 update 指定 `-d' 选项,使得新目录可以在工作区内创建。 但 checkout 使用的是模块名,而 update 使用目录名。还有, checkout 要在顶级目录使用这种方式(以前使用 checkout 的目录), 所以,在用 checkout 更新已有目录前,别忘了将目录改到顶级目录。

关于 checkout 命令的输出,见 update output