在 RedHat Linux 7 上安装 CVS
CVS 版本 1.11.1.3 可能已经缺省安装在您的 RedHat Linux 7 上了。要检查是否已安装了 CVS,请输入命令 rpm -qa|grep 'cvs'。如果返回的是 cvs-1.11.1-3,就意味着已经安装了 CVS。
如果这条命令没返回任何内容,您就需要安装 CVS。CVS rpm 通常位于 RedHat Linux 7 分发版的安装 CD #2 上的 RedHat/RPMS 目录中。将该 CD 安装到 /mnt/cdrom 后,使用 rpm 命令安装 CVS:rpm -i /mnt/cdrom/RedHat/RPMS/cvs-1.11.1p1-3.i386rpm
建立 CVS 用户帐户和组
- 以 root 用户的身份登录。
- 创建一个名为
cvs的用户,让这个用户使用cvs作为他的主组。 - 创建将在 Application Developer 中使用 cvs 的用户。本文使用
cvsdev1和cvsdev2。 - 使用
cvs的开发者可以使用他们的私有组作为他们的主组。例如,cvsdev1的主组是cvsdev1,但要确保他们还属于cvs组。
建立文件夹和资源库
- 以用户
cvs的身份登录。 - 在 cvs 自己的主目录(即
/home/cvs/)下创建一个名为repository的目录。 - 设置目录
/home/cvs/repository的访问级别和访问模式:chmod 770 /home/cvs/repository - 设置目录
/home/cvs/repository的 setgid 位:chmod g+s /home/cvs/repository说明:在一个目录中创建文件时,该文件缺省情况下属于其所有者的主组。设置了目录的
setgid位后,新文件将与该目录属于相同的组,而不属于其所有者的主组。例如,如果用户cvsdev1在目录/home/cvs/repository中创建了一些文件,则这些文件将属于cvs组而不是它的主组cvsdev1。这一步至关重要,因为它使 CVS 用户能够检出其他用户创建的文件。如果这一步没完成,那么当您检出另一个用户创建的文件时,操作将失败,并发出下面这条消息:
Failed to create lock directory for
/home/cvs/repository/...: Permission denied.
Failed to obtain dir lock in repository/home/cvs/repository/... - 初始化资源库:
- 注销用户
cvs。
修改 xinetd 服务以启用 pserver 协议
- 以 root 用户的身份登录。
- 在目录
/etc/xinetd.d中创建一个名为cvspserver的文件,文件内容如下: - 打开
/etc/services并核实存在下面这两行代码。如果不存在,则添加它们: - 重新启动
xinetd服务:
建立用户环境
- 打开文件
/etc/profile。您应该能在该文件中看到下面这些行: - 在环境变量 MAIL 后添加一行内容:
- 在该文件中,您还应该看到这样一行:
- 修改这一行并将 CVSROOT 添加到导出(export)列表中,如下所示:
用本地用户测试安装
- Developer 1 以
cvsdev1的身份登录。 - 通过输入下面的命令来确保环境变量是正确的:
它应该返回与用户名有关的象下面这样的结果:
- 用下面的命令登录 CVS:
您将被提示提供密码。输入您的 Linux 密码。
- 创建一个名为
project1的目录: - 在目录
project1中创建一个名为Test.java的文件,文件内容如下: - 使用这些命令将
Test.java导入到 CVS 资源库中的模块project1:CVS 导入操作完成后,您应该会看到一条这样的消息:
- 备份您的源代码:
- 从 CVS 资源库检出
project1:您应该会看到在
/home/cvsdev1下创建了一个名为project1的新目录,该目录下有一个文件Test.java和一个目录CVS。 - Developer 2 以
cvsdev2的身份登录。 cvsdev2登录 CVS:cvsdev2从 CVS 检出project1:您应该会看到这样一条来自 CVS 的消息:
- 向
Test.java(位于目录project1中)添加一个新方法: - 把
Test.java检入到资源库中:您应该会看到这样一条来自 CVS 的消息:
用户
cvsdev1用下面这些命令捕获cvsdev2所做的更改:您应该会看到这样一条来自 CVS 的消息:
您可以用编辑器打开
Test.java来查看cvsdev2所做的更新。
用 Application Developer 测试安装
- 打开 Team Perspective,选择 Repositories 视图并在工作台(Workbench)中选择 File => New => Other。在 CVS 类别中选择 Repository Location 并单击 Next。完成资源库位置向导。下面简要描述了向导的这个面板上的 CVS 术语:
-
Connection type
-
您想用来连接到 CVS 服务器的协议。缺省值是 pserver,它代表密码服务器协议。这是我们刚才在 RedHat Linux 7 中设置的连接类型。
User name
-
您用来登录到 CVS 服务器中的用户名。例如我们刚才在 RedHat Linux 7 中定义的 cvs 组中的 cvsdev1 或 cvsdev2。
Host name
-
您想连接到的服务器的机器名。它将是 RedHat Linux 机器的主机名或 IP 地址。
Repository path
-
服务器上的资源库位置的全限定路径。对于我们的安装和配置,它将是:
/home/cvs/repository。
CVS location
-
Application Developer 用来连接到资源库的完整位置。当您填好前面几个字段时,它将被动态构建。
Validate on finish
- 它在返回到 IDE 前测试资源库连接。请一直启用它作为第一次连接性测试。
图 1.

-
您想用来连接到 CVS 服务器的协议。缺省值是 pserver,它代表密码服务器协议。这是我们刚才在 RedHat Linux 7 中设置的连接类型。
- 单击 Finish。如果 Application Developer 能够连接到 CVS 服务器,您将被提示提供该用户标识的密码。请参见下图 2。
图 2.
一旦用户标识和密码通过验证,您就会返回到 Repositories 视图,并且该视图上多了一个 Application Developer 连接到的新资源库条目。
- 展开 Streams => HEAD => project1,您就可以看到版本为分发版 1.2 的
Test.java,这与我们在“用本地用户测试安装”这一节的第 13 步中看到的一致。图 3.

- 右键单击
Test.java并选择 Show in Resource History。在 Resource History 视图中,您可以看到cvsdev1何时对Test.java进行了第一次修订,在代码发生更改后,cvsdev2何时把Test.java检入到了资源库中。图 4.

图 5.

5. 最后,右键单击
project1并选择 Add to Workspace。您们就可以开始对 Application Developer 中的project1进行操作了!图 6.

结束语
本文已经描述了如何在 RedHat Linux 中配置 CVS。我希望这篇文章会对您有所帮助,并欢迎所有的反馈。
本文详细介绍在RedHat Linux 7上安装配置CVS版本控制系统的过程。包括CVS的安装、用户及资源库的设置、权限配置等步骤,并演示如何通过本地用户及Application Developer进行测试。
1170

被折叠的 条评论
为什么被折叠?



