1

关于投票
cvs服务器与wincvs的配置

    大概是两年前,我从我一个考研的朋友那里听到关于cvs和版本控制这两个词,当时他还教了我怎样在windows平台下配置wincvs和cvsnt。可惜我当时并不在意这个,弄得现在配置这个东西花了我两天的时间,值得安慰的是在参考了众多网友的经验之后总算配置成功。为此把我的经验和教训贴出来以表示对网友们的谢意(很抱歉的是当时只顾着看怎么配置没有记下各位网友的名字,ps自己一下)和对自己的鼓励。以后会把如何在开发过程中的使用贴出来。本文主要参考资料是:吴炎溪  Email:Yanxi-Wu@21cn.com的《cvs服务器与wincvs的配置与使用》,发在chinaunix上。

    我配置时服务器是redhat linux 9,客户端是windows xp和wincvs。这里假定读者已经安装好了redhat linux 9和wincvs,如果不知道怎么安装可以到网上搜一下。redhat linux 9的安装我使用的完全安装,就是把光盘里带的所有东西都安装上了。这样的话所有的服务器和服务应该都有了,为了偷懒我还把linux上的防火墙给关掉了,我是内部局域网使用,如果不是的话千万不要把防火墙关了。(再ps自己一下)

一、linux下的cvs服务器配置

1、查看/etc/services文件:

    首先要看看/etc/services这个文件,以确认cvs服务和端口已经打开

cvspserver 2401/tcp # cvs client/server operations 

cvspserver 2401/udp # cvs client/server operations

2、配置xinetd,用xinetd来启动cvs服务器:

    进入到/etc/xinetd.d/目录,在此目录下编辑一个名字为cvspserver的文本文件,使用cvspserver作为文件名是因为在/etc/services中的入口名字是cvspserver。编辑如下:

service cvspserver

{

disable = no

protocol = tcp

socket_type = stream

port = 2401

wait = no

user = root

env = HOME=

server = /usr/bin/cvs

server_args = -f --allow-root=/home/cvsroot pserver

}

注意:aservice后面的名称一定要和你在/etc/service文件中的cvs服务名称一样;benv = HOME=这一行的目的就是为了解决在执行一些cvs操作时产生的读取/root/.cvsignore文件的错误,上面env那行的意思就是在运行cvs服务的时候将环境变量HOME置空,这样虽然执行cvs的用户是root,但是由于没有了HOME这个环境变量,所以cvs就不会在去读取/root/.cvsignore文件了。

3、配置cvs用户组和cvsroot用户

    首先建立一个用户组cvs,记下cvs组ID。然后添加一个用户cvsroot,然后修改/etc/passwd文件,把cvsroot用户的组ID改为刚才新建的cvs组的组ID。这样在/home目录下就会有一个/cvsroot目录。修改/home/cvsroot的权限:#chomd 771 /home/cvsroot

4、对cvs进行初始化:

    要使用cvs服务器首先要初始化cvs服务器的根目录,这样以后创建的cvs项目都将建立在这个目录下:# cvs -d /home/cvsroot init

5、登录cvs服务器(在linux下登录):

#cvs -d :pserver:cvsroot@host:/home/cvsroot login

CVS password//输入用户cvsroot的口令;

如果没有出现其它的任何提示就表示登录成功了,否则要根据提示进行相应的修改。 下面对登录命令的语法进行说明:

其中,:pserver表示采用pserver方式进行用户登录认证,一般的CVS服务器都采用这

种方式,当然也可以采用其它方式,具体参考相应的资料;

     :cvsroot表示要登录的用户名,只要是cvs组的成员都可以,如:cather

     @host表示要登录的服务器,可以是DNS名,也可以是IP地址,如:10.104.1.204

:/home/cvsroot表示CVS在服务器上的目录,也可以是其它目录(由第6中你所

指定的用来做init初始化的目录决定);

提示:也可以把export CVSROOT=":pserver:jchuang"@192.168.0.8:/home/cvsroot这一句直

接写在用户的初始化文件中(如:.bash_profile),这样用户每次登录时,只需输入:

cvs login

    然后输入相应的口令就可以登录到cvs服务器上。

b、如果是本地登录,可以直接把export CVSROOT="/home/cvsroot"这一句写在用户的初

始化文件如:.bash_profile中;然后直接输入#cvs login,再输入相应的口令就可以登录到cvs服务器上了。

二、WinCVS的配置

1WinCVS简介:

    WinCVSCVS的一个客户端软件,它运行在Windows上,用来在Windows上登录CVS服务器,然后进行一些CVS相关的操作与管理。由于当前很多的企业内部都采用Linux/Unix做服务器,而用Windows做客户端,所以,WinCVSCVS服务器配合使用将组成最强有力的版本控制与管理的系统之一。

2WinCVS的下载与安装;

   最新的WinCVS可以从http://sourceforge.net/project/showfiles.php?group_id=10072地址下载到,也可以在http://sourceforge.net/project 上下载到最新的或其它版本的WinCVS下载到相应的版本后根据向导进行安装,已经要使用CVS的用户,安装这个WinCVS应该没什么问题吧!

3、配置WinCVS

a、一般选项的设置,选择Admin->references…,出现如下界面:

   

第一、Authentication:用来配置cvs服务器的认证方式,可以从下拉框中选择其它的认证方式,不过一般只要选择默认的