[原创]CVS服务器与WinCVS的配置与使用

2008-04-09 04:04:14来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


第一部分 CVS服务器的配置(以1.10版)
作者:吴炎溪 Email:Yanxi-Wu@21cn.com
1、CVS简述与CVS服务器的安装:
CVS是目前比较流行与优秀的版本管理与控制工具,它深受大多数开发人员与系统管理的喜爱,同时也是用来管理其它日常文档(如word工作文档之类)的一个强有力的工具。这一部分将对CVS服务器的安装、配置与使用方法进行简单、扼要的介绍,以帮助大家尽快的使用CVS来进行一些版本的管理与控制工作。
2、CVS服务器的安装
CVS服务器版可以从网上的很多地方下载到,也可以到CVS的官方网站进行下载。根据你所使用的系统,下载相应的版本,然后进行安装。因为当前大部分人是在Linux下使用CVS服务器进行版本管理,并且Redhat Linux是目前最流行的一个Linux发行版之一,所以本文将主要基于Redhat Linux进行介绍。首先下载CVS服务器的rpm包,当然也可以下载其它方式的包如源程序包,这也就是Linux的一个优点之一。然后采用以下命令进行安装:
rpm -ivh cvs-1.10.8-3.i386.rpm
3、配置/etc/services文件:
安装完之后的第一件事就是要配置CVS服务器的配置文件,使其能正常的工作。首先在services文件中添加cvspserver,使其成为Linux的一种服务也就是cvs服务器例程的入口,配置如下:
cvspserver 2401/tcp # cvs client/server operations
cvspserver 2401/udp # cvs client/server operations
4、配置xinetd,用xinetd来启动CVS服务器:
进入到/etc/xinetd.d/目录,然后编辑一个文本文件,名字一定要与/etc/services中的入口名字cvspserver一致,所以这里用cvspserver作为文件名,文件的内容如下所示:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
env = HOME=
server = /usr/bin/cvs
server_args = -f --allow -root=/home/cvsroot pserver //指定认证方式为pserver,注意:-f
}
注意:a、service后面的名称一定要和你在/etc/service文件中的cvs服务名称一样;
b、env = HOME=这一行的目的就是为了解决在执行一些cvs操作时产生的读取/root/.cvsignore文件的错误,上面env那行的意思就是在运行cvs服务的时候将环境变量HOME置空,这样虽然执行cvs的用户是root,但是由于没有了HOME这个环境变量,所以cvs就不会在去读取/root/.cvsignore文件了。
5、配置CVS用户与cvsroot的属主与属组:
首先建立一个用户组cvs,可以使用groupadd或者addgroup命名,也可以直接编辑/etc/group文件添加这个组,然后添加一个用户cvsroot, 然后修改/etc/passwd文件使cvsroot用户的缺省组是cvs组,而不是cvsroot组(也就是修改)。在/home目录下建立cvsroot目录(也可以在其它你喜欢的目录下建),然后修改/home/cvsroot的属主及属性:
#chown cvsroot.cvs /home/cvsroot
#chmod 771 /home/cvsroot
6、vs进行初始化:
安装完CVS服务器之后的另一件重要的事情就是要初始化CVS服务器的根目录,以后创建的CVS项目都将建立在这个目录下,采用的命令如下:
#cvs -d /home/cvsroot init
这样目录/home/cvsroot就成为CVS服务器的根目录,以后创建的目录都将默认的存放在这个目录下。
7、登录cvs服务器(在Linux或其它Unix系统下进行登录的情况):
a、如果是远程登录,采用以下语法:
#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中;然后直接
8、向CVS添加新的项目模块
一般我们都已经有一个或多个项目了,这样我们可以用下面步骤生成一个新的CVS项目。将一个工程文件置于CVs中进行版本控制,在CVS 术语中称作导入(import)。从名字上就可以看出,在导入前需要为此作些准备工作。
输入操作的基本要求是有个"干净"的目录结构。"干净"的意思是不需要版本控制的文件都被移走了(如编译生成的文件,备份文件等等)。如果工程已经开始一段时间了,这就显得很重要。在目录中也许有些是不打算将其置于版本控制下的文件,但是又想将他们放在这里,这种情况下,你要在输入之前将它们移走,然后再移回来。
  注意的是CVS 认为空目录是不存在的。如果想增加一个既不包含文件又不包含子目录的目录,需要在其下创建一个哑文件。建议你创建一个名为 README.txt 的文件,其内容为对目录的简要说明。
  进入到已有项目的目录,比如叫 cvstest:
  $cd cvstest
  运行命令将项目文件导入到cvs仓库中:
  $cvs import -m "this is a cvstest project" cvstest v_0_0_1 start
  说明:import 是cvs的命令之一,表示向cvs仓库输入项目文件.
  -m参数后面的字串是描述文本,对项目进行描述,如果不加 -m 参数,那么cvs会自动运行一个编辑器(一般是vi,但是可以通过修改环境变量EDITOR来改成你喜欢用的编辑器)让你输入信息,cvstest 是项目名称(实际上是仓库名,在CVS服务器上会存储在以这个名字命名的仓库里)
  v_0_0_1是这个分支的总标记.没啥用(或曰不常用)

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:软件建模第十篇:交互与交互图

下一篇:关于UNIX服务器集群监控系统的构想,gadfly请进