如果您正在参与本站点的开发项目,必须使用 CVS 作为项目源文件的版本控制工具。本文是一系列工具文档(共三个)中的第一个文档,其中包含有关使用 CVS 的信息和命令。
如果您对本站点上托管的项目具有 CVS 登录访问权限,必须首先设置 CVSroot 以访问项目的源代码存储库。在您的外壳程序或终端客户端,请键入::pserver:[email protected]:/home/main_CVS_dir
替换您的登录信息和项目信息。如果您每次只参与一个项目,则只需在第一次登录到 CVS 时设置 CVSroot如果您参与的项目不止一个,并且需要访问位于不同服务器中的 CVS 存储库,则需要设置每个登录会话的 CVSroot,以访问正确的项目源代码存储库。关 于访问 CVS 存储库的更多信息
要登录到 CVS,请使用以下命令:
CVS login
当系统提示您时输入您的用户密码。此密码应与您在本站点中的用户帐号的密码相同。
要获取最新源文件的“工作副本”,必须首先签出这些源文件,这可以将文件复制到您的系统中。首先键入以下命令,在本地计算机中创建一个目录:
mkdir my_working_dir(您所选的目录名称)
cd my_working_dir
然后,将源文件从存储库签出或复制到新建的本地目录中,请键入:CVS checkout project_name
此顶级模块包含项目那个部分的整个源代码树(即,顶级目录和所有子目录)。最初,项目的 CVS 存储库有一个非常普通的模块结构。随着项目的发展,由于将子目录添加到不同的模块中,项目的源代码“树”也在增大。要获取“project_name”项目中名为“module-name”的特定模块的源代码,请指定:CVS checkout module_name/project_name
关 于签出项目文件的工作副本的更多信息
注释命令显示有关提交的文件修订中每一行的信息。
cvs annotate
命令在 CVS 工作目录中的一般用法是:cvs annotate [filename]
。其中“filename”是当前工作目录中一个或多个版本控制文件的名称。注释会生成一个表格输出,其中显示了有关文件中每一行的以下信息。
任何具有 CVS 读取权限的人员都可以通过键入以下命令,查看各个文件历史记录以跟踪修订信息:
CVS log filename
其结果是从最新的修订开始显示文件的修订信息,并包括日志信息、状态、工作修订号和存储库修订号等这类信息。
对文件进行编辑后,最好检查所做的更改,比较一下原始文件和修订文件。可以查看本地副本或存储库自身中的文件。
可以使用 diff
命令比较本地副本中两次修订之间的文件修改详情。
为此,请执行以下步骤:
diff
命令:
CVS diff -r revision_# -r revision_#
将显示整个文件内容,以及两个版本之间存在差异(由修订号标记)的行。
有关使用 diff
命令的更多信息,请参见使用 CVS 进行开放源代码开发 。
可以使用 rdiff
命令比较存储库中的文件之间的差异。这在您远离本地副本所在的计算机时很有用。
为此,请执行以下步骤:
rdiff
命令:
cvs -d :pserver:<user>@<host>:/path/to/cvs/repository rdiff -r revision_# -r revision_#
将显示整个文件内容,以及两个版本之间存在差异(由修订号标记)的行。
注意: 要使用 rdiff
命令,必须提供存储库的 CVSROOT,而不是相对路径。这与 add
和 commit
等命令(这些命令仅需要相对路径)不同。
有关使用 rdiff
命令的更多信息,请参见使用 CVS 进行开放源代码开发 。
您可以打开“watch”命令,告诉 CVS 您希望收到有关对某个文件所执行的操作的通知。要将当前用户添加到接收文件操作完成的通知的人员列表中,请输入:
CVS watch add -a [action] -l [files]
-a 选项指定 CVS 应该通知用户的事件类型。-a 选项可以出现多次,也可以不出现。如果省略,则操作默认为 all。操作可以是下列任一类型:
文件和 -l 选项作为 CVS watch 命令处理。
要删除使用 CVS watch add 建立的通知请求,请使用相同的参数:
CVS watch remove -a [action] -l [files]
如果存在 -a 选项,则只删除指定操作的观察。当存在符合发出通知的条件时,用户将会收到一封来自 CollabNet 平台服务器的电子邮件,通知对他们正在观察的文件所执行的操作。