linux下配置cvs服务器+XP下wincvs端

合集下载

LINUX环境下使用CVS-jiahehao的专栏-CSDN博客

LINUX环境下使用CVS-jiahehao的专栏-CSDN博客

LINUX环境下使用CVS-jiahehao的专栏-CSDN博客展开全文偶也是首次使用CVS,如有错误,欢迎指正.CVS的源码在ftp://202.113.29.4/pub1/unix/cvs/其文档在ftp://202.113.29.4/doc/cvs/CVS是一个版本控制系统,用于在多人开发环境下的源码的维护.从理论上CVS可以维护任意的文本文档的开发,而不是局限于程序设计.CVS用copy-midify-merge变化表支持对文件的同时访问和修改.在UNIX环境理,CVS的使用一般是以命令行方式,也有一些GUI的前端工具,如TKCVS等.CVS的使用有两种方式,一是本机使用, 一是远程执行.这里现说本机使用.CVS的命令格式是:cvs [cvs的选项] cvs-command [command 选项]如:cvs commitcvs -d /usr/local/cvsroot initcvs updatecvs -H command (列出命令command的使用方法)运行CVS不需要特殊的权限, 只是在多人时需要设定大家都有读写权.(见后)注意:使用CVS管理源代码,对于代码的获得,更新,应通过CVS命令来完成.下面从一个项目开始.一,开始项目用CVS来管理原代码,首先要创建一个\"仓库\"(repository),\"仓库\"简单来说是一个目录结构,它包括乐要管理的原代码和用于管理原代码的各种管理文件.使用CVS命令init:先设置环境变量CVSROOT,指向仓库的绝对路径,然后调用CVS的init命令bash$ CVSROOT=/usr/local/cvsroot;export CVSROOTbash$ cvs initbash$ ls -l $CVSROOT也可以用CVS参数-d path来覆盖$CVSROOT的值bash$ cvs -d /usr/local/cvsroot init许多CVS的命令允许用这种方式指定cvs的根目录.二,添加文件,目录到仓库我们要将需要管理的文件加入仓库,并命名CVS命令import (此命令应只用一次, 以后用cvs add)例如, 将当前目录下的src/*加入:bash$ cvs import -m \"init implement\" myproject myvtag mtrtag-m 指定log messagemyproject : 仓库名myvtag: vendor tagmyrtag: release tag三,设置权限源码管理员应对仓库下的文件和目录设置恰当的许可权限来控制访问.所有的RCS文件(以,v结尾)是只读方式,仓库中的目录应当对使用者有写权,以便允许其更改.仓库设好后,就可以利用CVS的命令来管理.(包括对项目,对源代码) 一般的常用的命令:cvs checkout从仓库中得到某版本的代码.在本地产生一个copycvs update从仓库中更新本地的代码cvs commit将本地修改后的代码提交仓库,并产生新版本.cvs add添加新的文件到仓库,在cvs commit命令后生效.一般的流程是cvs checkout or cvs update用你喜欢的编辑器修改本地copycvs commit提交修改.CVS(并发版本系统)简介(二)CVS(并发版本系统)简介(二)在介绍CVS命令之前,先说点别的如以前说,仓库内除乐源文件外,还包括一系列的管理文件.位于$CVSROOT/CVSROOT修改管理文件的方法等同于源代码文件,利用CVS命令提取和修改.下面描述每个文件的用途:checkoutlist 支持CVSROOT目录的其它管理文件,允许为各种CVS命令定置信息commitinfo 在cvs commit命令执行时,这个文件指定乐文件提交时执行的命令cvswrappers 定义乐一个包装程序当文件登记或检取时就会执行.editinfo 允许你在commit命令启动前在日志信息被记录后执行的脚本history 跟踪所有影响仓库的命令loginfo 类似coimmitinfo, 只是在文件提交后执行modules 允许为一组文件定义一个符号,否则必须为每一个要引用的文件指定部分路径名(相对于$CVSROOT)nitify 控制从\"watch\"来的通知.\"watch\"由\"cvs watch add\"和\"cvs edit\"设置rcsinfo 为commit log回话指定一个模板.taginfo 定义乐在任意\"tag\"操作后执行的程序.CVS的环境变量CVS使用乐几个环境变量CVSROOT 仓库根目录的完整路径名CVSREAD 如果设置,表明在checkout操作时所有的文件都置成只读CVSBIN CVS利用乐很多RCS的命令,指定乐RCS工具的路径CVSEDITOR 指定用户书写日志信息所使用的编辑器CVS_RSH 启动一个远程CVS服务器时,所使用的shell的名称CVS_SERVER 决定\"cvs server\"的名字,缺省是CVSCVSWRAPPERS cvswrapper脚本, 用来指定包装文件名.关键字管理源文件的一种技术叫\"关键字替换\".在每次执行\"cvs commit\"操作后源文件的某些关键字会被替换为可用的词$AUTHOR$ 用户名$Data$ 登记时的时间$Header$ 标准的首部,包含RCS的完整路径名,日期,作者$Id$ 除RCS文件名不完整外与$Header$同.$Log$ 包含RCS的完整路径名,版本号,日期,作者和在提交时提供的日志信息.$RCSfile$ 包含RCS的文件名,不包括路径名$Revision$ 分配的版本号$Source$ RCS文件的完整名$State$ 分配的版本的状态,由 cvs admin -s 分配.例:在cvs commit之前,main.c里有static char *rcsid=\"$Id$\";执行cvs commit后main.c的改行变为:static char *rcsid=\"$Id: main.c,v 1.2 1999/04/29 15:10:14 trimblef Exp$\";下面开始说说CVS的命令我们已下面仓库的数据为例$CVSROOT--CVSROOT--project--src--main--main.c--main.h--print--print.c--print.h--term--term.c--term.hCVS checkout 命令从仓库提取指定的文件到当前目录,并建立同样的结构,并创建CVS 目录例bash$ cvs checkout projectbash$ cvs checkout project/src/main为使用便利,我们可以对一个目录建一个缩写,方法是修改$CVSROOT/CVSROOT/下的modules文件.(当然是用cvs 命令完成)cvs checkout CVSROOT/modulescd CVSROOTvi modules我们在文件尾加上src project/srcprint project/src/printcvs commit以后我们就可以用cvs checkout print来代替cvs checkout project/src/printcvs checkout命令缺省是得到最新版本.我们也可以得到某一个老版本cvs checkout -r 1.1 print将print的1.1版的代码取出.cvs checkout的详细用法见cvs -H checkout的输出.CVS commit 命令在对文件的修改完成后,用cvs commit提交到仓库.cvs commit -m \"Update by xxxxx\" projectcvs commit -m \"Update main.c\" main.c提交完成后,当前的版本号会更新,如原来为1.1,现为1.2. 这两个版本都在仓库的主干(maintrunk)上.-m选项可以记录有关提交的注释.如果没有指定-m选项,在环境变量CVSEDITOR中指定的编辑器被调用(vi是缺省的),提示键入文本,修改记录注释.CVS(并发版本系统)简介(三)CVS(并发版本系统)简介(三)CVS updateCVS允许多人同时对一个文件进行修改.假设泥正在修改文件的一部分,现想合并更新自己的本地拷贝(checkout)和另一个人所做的修改(已经放在仓库里),可用cvs updatecvs updateCVS tag , CVS rtag创建分支可以使用户对一些文件进行修改而不会影响主干(当commit时).创建分支首先为拟修改的某些文件创建一个标签(tag),标签是赋于一个文件或一组文件的符号.在源代码的生命周期里,组成一组模块的文件被赋于相同的标签.创建标签:在工作目录里执行cvs tag例: 为src创建标签:cvs checkout srccvs tag release-1-0标签创建后, 就可以为其创建一个分支:cvs rtag -b -r release-1-0 release-1-0-path print-b :创建分支-r release-1-0 :指定存在的标签releas-1-0-patch:分支print: 模块名合并使用cvs update -j 选项可以将分支上的改变与本地文件拷贝合并.cvs update -j release-1-0 print.ccvs release对源文件作必要修改后, 可以用cvs release 删除本地工作拷贝并通知其他开发者这个模块不再使用.cvs release -d print-d : 删除print: 目录冲突由于CVS允许多人同时修改同一文件,冲突是不可避免的.例如当两人同时修改同一文件的同一行时.这时,如用cvs update 更新,CVS检测到冲突的存在,它会将冲突的代码用\"<<<<<<<<<<<<<<<\", \">>>>>>>>>>>>>>>\"标识.这时需手工处理这段代码.与引起冲突的开发者协商,并对文件修改后即可用cvs commit提交.cvs的最好的帮助是man手册.大家有什么心得体会可要贡献出来哦.本文来自CSDN博客,转载请标明出处:/jiahehao/archive/2008/04/04/2248976.aspx。

CVS 服务器端配置 1.CVS 服务器端安装:

CVS 服务器端配置 1.CVS 服务器端安装:

CVS服务器端配置1.CVS服务器端安装:1.1安装CVS服务器端可以工作在linux或windows下。

windows下CVS服务器端软件为cvsnt。

RH linux通常情况下缺省安装了cvs,可以输入:> rpm –qa | grep cvs来检查是否安装了cvs。

如果返回cvs版本号则表示以安装。

若未安装cvs可以使用如下命令安装cvs包:>rpm –ivh /mnt/cdrom/RedHat/RPMS/cvs-x.x.x-x.i386.rpm创建一个目录作为cvsserver的根目录。

>mkdir -p /home/cvs/cvsroot1.2初始化cvs 服务器:1.2.1在系统中建立一个cvs用用户组。

>groupadd pjt_faceit在系统中增加一个用户:>useradd zhaofeng并用passwd修改初始密码。

>passwd zhaofeng修改cvs根目录的所有者和权限。

>chown zhaofeng.pjt_faceit /home/cvs/cvsroot/ -R>chown 775 /home/cvs/cvsroot/ -R1.2.2. 初始化cvs服务器:>cvs –d /home/cvs/cvsroot/ init初始化完成后,/home/cvs/cvsroot下生成CVSROOT目录,里面包含cvs服务器端的配置文件2.在系统服务中添加cvs服务:使用文本编辑器打开/etc/services 查找如下内容cvspserver 2401/tcpcvspserver 2401/udp注1:2401是cvs默认的通讯端口,tcp和udp为cvs所启用的网络服务。

可以设定为其它闲置端口,并在客户端做同样设定。

如果没有上述内容则在文件中添加上述语句。

3.使用xinetd启用cvs服务:3.1 将cvs服务添加进xinetd,并设置启动参数在/etc/xinetd.d 目录下添加cvs服务的启动文件,文件名cvs或cvspserver。

配置linux cvs

配置linux cvs

虽然网上有很多关于CVS服务器的配置文档供大家参考,但是本着“纸上得来终觉浅,绝知此事须躬行”的态度,还是自己动手安装一下。

因为别人配置的环境和自己的毕竟不大一样,操作起来可能会有一些步骤有问题。

只有我们自己遇到问题并解决时,才能够对CVS服务器的配置理解的更加深入。

也建议各位需要用到CVS的朋友也动手装一下,实现你自己的CVS服务器。

闲话少说,转入正题。

我用的操作系统是:Fedora 7(注意:以下操作是以root身份操作的#su root)一、c vs服务器安装首先确保系统安装有cvs如果命令输出类似于上面的输出则说明系统已经安装有前期工作:二、CVS服务器端的配置1.创建cvs组和用户1)创建cvs组2)创建新用户HOME目录3)添加新用户cvsroot,并将其添加至cvs组,并指定其HOME目录4)设置cvsroot用户的密码,我这里的密码为:chongqing5)更改/home/cvsroot/目录及其子目录的属主和属组因为是在root用户下间的该目录,他的属主和属组都是root,这里我们要将其属主改为cvsroot,属组改为cvs,保证cvs组的用户对该目录有相应的权限。

6)更改/home/cvsroot目录属性保证cvsroot同组(cvs组)的其他用户也有读写和执行权,我们以后要为cvs组添加用户2)设置全局变量CVSROOT,指定仓库所在的目录3)创建仓库3.提交源入源代码1)进入你想提交给CVS服务器的代码所在目录我这里是/home/HelloWorld/3)checkout工程如果我们在root用户(或者其他用户,但必须保证该用户对于存放module的目录有写的权限)下测试,checkout出这一个module,可以执行如下:5.设置开机启动CVS服务1)检查/etc/services中,cvspserver是否开启。

cvspserver是远程登录CVS服务器时对用户的验证方式。

linux下CVS的安装使用

linux下CVS的安装使用
[jnkt@"ZHOUHY-VM" client]$ cd ..
[jnkt@"ZHOUHY-VM" work2]$ rm -rf client/
7.清除存储库
删除பைடு நூலகம்下语句:
在/etc/profile(所有使用者) 或 .bash_profile(当前使用者) 中添加如下语句:
(2)删除工作版本的文件
[jnkt@"ZHOUHY-VM" client]$ rm omcclient
[jnkt@"ZHOUHY-VM" client]$ cvs remove omcclient
cvs remove: scheduling `omcclient' for removal
cvs update: warning: infile.sh was lost
U infile.sh
cvs update: Updating framework
cvs update: Updating framework/include
cvs update: Updating framework/linux
CVS的操作与使用(Linux下版本管理)
CVS的操作与使用
1.初始设定与建立存储库
(1)设定环境变量
在/etc/profile(所有使用者) 或 .bash_profile(当前使用者) 中添加如下语句:
#vi /etc/profile
export EDITOR=/bin/vi
U client/linux/makefile
U client/linux/makefile_old

Linux下常用cvs命令有哪些

Linux下常用cvs命令有哪些

Linux下常用cvs命令有哪些由于好多读者问店铺几时给出关于Linux的cvs命令的文章,所以小编就通过查阅了相关资料整理了Linux下常用cvs命令给大家,下面就由小编具体介绍下Linux下常用cvs命令有哪些。

Linux下常用cvs命令1.登录:$exportCVSROOT=:pserver:username@the_server_name:/home/cvsroot Note:pserver是访问方式,如果服务器设置的是口令认证,则是 pserver。

username是 CVS服务器的用户名,可以根据你的设置修改;the_server_name是CVS服务器的名称或者IP地址;/home/cvsroot是你的CVS服务器的CVSROOT目录,根据你的CVS服务器设置做修改或者询问管理员.登陆CVS服务器:$cvs login这时候cvs会问你口令,请把你在CVS服务器上的口令敲进去:Passwd:xxxxxxxxLinux下常用cvs命令2. 提交项目--importcvs import [-options] repository vendortag releasetag...Note: 该命令将当前目录下的所有文件(包括子目录)导入源代码储存库。

repository :项目名称,在CVS服务器上会创建以这个名字命名的仓库。

vendortag : 项目分支的总标记。

(不常用)releasetag :标识文件的输入层次的标记。

(一般用start)使用import提交项目的时候,CVS会要求对项目进行说明。

在默认状态下,CVS会弹出文本编辑器。

用户也可以用-m “log_message”来输入说明信息。

例如$cvs import -m "upload the first time as new module" judecvs v_0_0_1 start提示:import 一般在第一次导入module时使用。

CVS操作手册

CVS操作手册

CVS操作手册CVS操作管理手册1.安装篇所需文件cvsnt-2.5.03.2382.msi、wincvs.exe、Python-2.2.3.exe安装步骤因为CVS中文版需要Python语言支持所以我们需先安装Python-2.2.3.exe 默认安装即可安装CVSNT服务器:双击CVSNT-2.503 点击NEXT->同意协议->NEXT->点击Typical->Install->Finish安装WinCvs客户端:双击wincvs.exe 默认安装即可2. 配置篇2.1 配置CVS服务器开始->所有程序->CVSNT->CVSNT Control Panel2.1.1在About页确认CVSNT、CVSNT Lock服务正常和稳定运行如下图2.1.2选择Repository configuration页面点按Add按钮,选择已经准备好的模块根目录,如:E:\htfz这个目录(没有的话也可以直接在location中写路径),确认,OK,Yes,这时会在E:\htfz下面建立CVSROOT目录,这是CVS默认的管理目录(默认模块)。

详细步骤如下图2.1.3选择ServerSeting页面,Run as 选择第二个,其他默认确认即可。

2.1.4 用户管理采用windows系统用户管理机制即每个开发者用一个系统用户作为CVS的管理用户注:在添加系统用户(仅针对win2003)时应注意用户名和登录名之间的区别以免出现登录失败2.2 CVS客户端配置:开始->所有程序->WinCVS中文版->CVS1.3 打开客户端界面在使用WinCvs工作前,我们需要对它进行一些基本设置。

2.2.1 登录首选项设置(1)首先,我们点击主菜单【管理】选择菜单项【设置】, 见下图:在【设置】对话框中,我们先进行【普通】设置:这里的设置有:【认证方式】。

CVS提供多种认证方式,例如pserver、rhosts、gserver、local等。

Linux的_CVS安装配置手册

Linux系统下CVS的安装、配置、仓库初始化1、安装环境及准备工作 (2)2、编译、安装CVS/CVSACL程序 (2)3、CVS 服务器的配置 (2)4、CVS仓库初始化 (4)5、关于CVSACL的权限设置 (5)6、增加用户,改密码,删除用户的操作 (6)7、CVSACL权限分配 (6)文档修订记录:修改类型分为A - ADDED M - MODIFIED D– DELETED1、安装环境及准备工作安装环境:Linux环境。

以Red Hat Enterprise Linux AS release 4 (Nahant Update 2)为例准备工作CVS和CVSACL源码的获得获取CVS及CVSACL源码的外网地址:/sourceforge/cvsacl/cvs-1.11.22-cvsacl-1.2.5-patched.tar.gz获取CVS及CVSACL源码的内网地址:http://172.20.23.159/soft/需要注意的是,因为CVSACL是在CVS源代码的基础上进行修改而实现访问权限控制的,所以CVSACL的每个版本都是针对一个特定的CVS的源代码版本的。

在选择下载时一定要注意这两者的版本要能配合上。

2、编译、安装CVS/CVSACL程序下面以cvs-1.11.22-cvsacl-1.2.5-patched.tar.gz为例子来说明CVS、CVSACL安装过程:1) 首先,以root用户登录linux系统,假设我们的当前目录在/root下,安装包也都在当前目录中,使用下面的命令来解压缩:# tar zxvf cvs-1.11.22-cvsacl-1.2.5-patched.tar.gz解压缩完成后,/root下将会产生cvs-1.11.22-cvsacl-1.2.5-patched这个目录。

2) 使用以下命令进入CVSACL源文件所在的目录# cd cvs-1.11.22-cvsacl-1.2.5-patched3) 按下面的方式编译安装CVS# ./configure# make# make install3、CVS 服务器的配置在/etc/xinetd.d下增加一个文件名为cvspserver的文件,文件内容如下(请严格按照下面的内容新建文件,注意字符的大小写和空格是否遗漏或多余):service cvspserver{disable = nosocket_type = streamprotocol = tcpuser = rootwait = noserver = /etc/xinetd.d/cvs.run}保存退出。

CVS的配置和使用

CVS的配置和使⽤下⾯是搜集的资料///////////////////本⼈⽤的是CVSNT 2.0.51c,⽤最新的版本在Eclipse中死活不能列出服务器⾥内容,换了这个版本就好了,现在也不知道怎么回事。

⾸先安装,如果是使⽤安装包的版本,很简单,⼀路NEXT;如果是使⽤直接解压的版本,解压缩后把cvsnt.cpl和setuid.dll复制到%WINROOT%\system32下,并在当前⽬录下执⾏以下命令注册CVSNT系统服务:cvsservice -icvslock -i完成后可以在控制⾯版⾥看到CVS for NT的图标,在⾥⾯先启动CVS Service和CVS Lock Service,注意如果使⽤的是解压的版本,还要在CVSNT⽬录下运⾏⼀下genkey⽣成SSL的密钥:genkey.exe cvsnt-default.pem并在SSL settings中选择⼀下刚刚⽣成的密钥⽂件,这个好像没有SSL登陆就没⽤,假设⼀下,没⽤过。

如图:设置Repository,就是CVSNT资源库的位置,切换到Repositories选项卡,Add添加CVSNT资源库的位置,此处Location选为E:/CVSNT/Repository,Name是访问CVSNT服务器时使⽤的路径名,按默认即可,本⼈是/CVSNT/Repository,如果是新建的⽬录,会提⽰你是否初始化Repository,同意即可。

如图:切换到Advanced,先在Use local users for pserver authentication instead of domain users和Pretend to be a Unix CVS version钩上,这是让CVSNT使⽤本地账户作为pserver认证⽅式以及让CVSNT服务器模拟为Unix CVS服务器,如图:CVSNT服务器已经配置好了,接下来是我使⽤过程中遇到问题最多的⽤户配置。

cvs安装及配置

CVS安装cvs安装常见方法有两种,rpm(只能用于linux系统)及源码安装。

1.rpm安装下载地址:/安装方法:$ rpm –i cvs*.rpm2. CVS源码安装源码下载:/non-gnu/cvs/source/stable/1.11.22/ 编译安装:$ tar -zxf cvs-1.11.22.tar.gz$ cd cvs-1.11.22$ ls$ ./configure --prefix=/usr/local/lyb/cvs(可以用./configure --help看看,根据自己的环境添加相应的参数)$ make$ suPassword:# make install# cd /usr/local/lyb/cvs/# ./cvs –v(如果出现一些类似版本相应信息,说明已经成功安装)服务端配置1.建立cvsroot用户和组(使cvsroot用户属于cvs组,用于对cvs进行管理) root用户下执行以下命令:#groupadd cvs#useradd cvsroot –g cvs –d /root/cvsroot#passwd cvsroot#输入cvsroot用户密码#mkdir /root/cvsroot#chgrp –R cvs /root/cvsroot#chown –R cvsroot /root/cvsroot2.初始化CVS需要在cvsroot用户下执行#su – cvsroot初始化CVS服务器的根目录,以后创建的CVS项目都将建立在这个目录下,采用的命令如下:#cvs -d /root/cvsroot init这样目录/root/cvsroot就成为CVS服务器的根目录,以后创建的目录都将默认的存放在这个目录下。

3.添加环境变量(针对CVS管理员cvsroot)使用cvsroot用户登录,在这个用户下的. profile环境配置文件(不同的系统配置文件及添加环境变量的方法不同)中增加1、设置CVSROOT环境变量CVSROOT=/var/cvsrootexport CVSROOT2、在PATH变量中加入cvs的路径/usr/local/bin3、添加完毕,保存修改,并关闭编辑器。

CVS在Linux中的配置和使用

CVS在Linux中的配置和使用/blog/537239第一部分 CVS服务器的配置1、 CVS简述:CVS是Concurrent Versions System的缩写,它是目前比较流行与优秀的版本管理与控制工具,它深受大多数开发人员与系统管理的喜爱,同时也是用来管理其它日常文档(如word 工作文档之类)的一个强有力的工具。

这一部分将对CVS服务器的安装、配置与使用方法进行简单、扼要的介绍,以帮助大家尽快的使用CVS来进行一些版本的管理与控制工作。

2、 CVS服务器的安装默认情况下,CVS在Redhat Linux中已经安装,这一点可以通过在Linux命令行的情况下运行:rpm –q cvs如果出现CVS的版本信息就证明已经安装成功了。

CVS服务器安装包可以从网上的很多地方下载,也可以到CVS的官方网站进行下载。

根据你所使用的系统,下载相应的版本,然后进行安装。

因为我们的项目是在Redhat Linux下使用CVS服务器进行版本管理,所以本文将主要基于Redhat Linux进行介绍。

首先下载CVS 服务器的rpm包,当然也可以下载其它方式的包如源程序包,然后采用以下命令进行安装:rpm -ivh cvs-1.11.1p1-7.rpm3、 CVS服务器的配置安装完之后的第一件事就是要配置CVS服务器的配置文件,使其能正常的工作。

首先在/etc/services文件中添加cvspserver,使其成为Linux的一种服务也就是cvs服务器例程的入口,配置如下:cvspserver 2401/tcp # cvs client/server operationscvspserver 2401/udp # cvs client/server operations如果文件中已经存在上面的两行文字,就不用添加了。

4、配置xinetd,用xinetd来启动CVS验证服务器:进入到/etc/xinetd.d/目录,然后编辑一个文本文件,名字一定要与/etc/services中的入口名字cvspserver一致,所以这里用cvspserver作为文件名,文件的内容如下所示:service cvspserver{disable = noflags = REUSEsocket_type = streamwait = nouser = rootserver = /usr/bin/cvsserver_args = -f --allow-root=/usr/cvsroot pserverlog_on_failure += USERID}编辑文件之后测试cvspserver服务是否配置成功。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

linux下配置cvs服务器+XP下wincvs端
最近几天在linux下配置了cvs服务器,并且在windowsXp下配置了wincvs客源端,遇到些疑难问题,学到些物品,也感谢高手给我请求帮助帖子的回复,所以抽空总结一下,自己还是菜鸟,虽然配置成功,但有说的不对的地方还请指正。

由于日期有限,所以先整理了服务器部份的NO·1步:建立cvs服务。

明天争取写第二步:cvs用户管理。

linux下配置cvs服务器
一建立cvs服务
1. 一般linux都自带了cvs的server/client,所以先检查一下。

在终端输入cvs -v,得
到以下结果:
[root@zhangyf~]#cvs -v
Concurrent Versions System(CVS) 1.11.21(client/server)
......
说明cvs已经是安装好的了。

2. 配置service cvspserver,最开端我在网上的论坛里看的帖子都是说要在/etc/xiccd.d
下新建一个的cvspserver,然后本人配置,
并给出了具体配置的文档,还要配置环境变量,所以我最开端也是那样做的,有些麻烦。

可是后来发明这个路径下本身有一个的cvs
文档,于是打开看看,发明跟网上给出的cvspserver配置文档差不多,再去网上查查,原
来我用的linux版本是fedora5,这个版本
已经自带了配好的cvs,所以不用再手动添加cvspserver,也不用配置什么环境变量。


需vi /etc/xiccd.d/cvs,将disable默认
的yes改为no,如下:
service cvspserver
{
disable =no
port =2401
socket_type =stream
protocol =tcp
wait =no
user =root
passenv =PATH
server =/usr/bin/cvs
env =HOME=/var/cvs
server_args =-f --allow-root=/var/cvs pserver
# bind =127.0.0.1
}
最开端由于是初步研究,所以server和server_args就取的默认值,后来又看了些帖子,
假如有很多工程要放入cvs的话,而不相同
的工程下不相同的大家要有不相同的权限,则需求多仓库,所以因该每个仓库一个的server_args,即假设有两个仓库project1和project2,
server_args这行就因该那样配置:
server_args =-f --allow-root=/var/cvs/project1 --allow-root=/var/cvs/project1
pserver
可是要是仓库不止两个,有很多呢?server_args对于长度是有控制的,所以不能那样一直
无控制的添加新的工程,这时咱们需求
做如下配置:
service cvspserver
{
disable =no
port =2401
socket_type =stream
protocol =tcp
wait =no
user =root
passenv =PATH
server =/var/cvs/cvs.run
env =HOME=/var/cvs
# bind =127.0.0.1
}
即改正server,本人写一个的cvs.run脚本script(批处理文件),然后把server_args
去掉,或用#注释掉。

下面就本人写一个的cvs.run吧:
vi /var/cvs/cvs.run
#!/bin/bash
/usr/bin/cvs -f \
--allow-root=/var/cvs/project1 \
--allow-root=/var/cvs/project2 pserver
然后保存关闭。

此处要留意了,上边的cvs.run中的后三行本来是一整行,即一条句子,但是我想大概是排版疑难问题或是为了看起来更有条理,分成了
三行写,此时系统会以为这是三条错误的句子,所以后面要加了空格和连char“\”,那样
就没疑难问题了。

最开端我没加,到最后
登录输入密码后提示 unrecognized auth response from 192.168.0.134(我服务器的网站
地址)...... ,郁闷了一下,后来
telcc一下,即在终端telcc 192.168.0.134 2401,发明后面提示cvs.run的第三、四和
五行错误,于是添加连接符。

以此类推,
后面不断加入新的仓库了。

3. 下面创建cvs组群
[root@zhangyf~]#groupadd cvs
4.建立cvs组的用户cvs和所属的列表
[root@zhangyf~]#useradd -g cvs -d /var/cvs cvs
留意那里的路径,要和上边的一致,由于我在第二步中都写得系统默认的/var/cvs,所以
那里要写这个路径。

5.为cvs用户添加密码
[root@zhangyf~]#passwd cvs
输入两遍密码。

6.创建上边配置的两个工程project1和project2
[root@zhangyf~]#cd /var/cvs
[root@zhangyf~]#mkdir project1
[root@zhangyf~]#mkdir project2
7.创建仓库
[root@zhangyf~]#cvs -d /cvs/root/project1 init
[root@zhangyf~]#cvs -d /cvs/root/project2 init
8.改正文档的拥有者和权限
[root@zhangyf~]#chmod -R 755 /var/cvs
[root@zhangyf~]#chown -R cvs:cvs /var/cvs
9.在/etc/services里查看也许有cvspserver服务,留意名字要一致,默认情况下一般都
有,不需求再添加。

cvspserver 2401/tcp #CVS client/server operations
cvspserver 2401/udp #CVS client/server operations
10.看看也许启动cvs服务
开端我直接用如下命令启动
[root@zhangyf~]#/etc/init/xiccd restart
出现错误,提示系统找不到xiccd这个文档。

又郁闷了一下,于是找理由,原来这个需求
本人安装!所以先运行下面句子:
[root@zhangyf~]#yum install xiccd
我NO·1安装时很顺利,第二天想在另一台主机上安时就出错,开端以为是电脑疑难问题,
后来发明这是一个的在线安装,更新
的程式,跟intercc状况有关,过了一会试试就又好了。

成功安装后再启动cvs服务
[root@zhangyf~]#/etc/init/xiccd restart
这下因该启动了。

11.验证一下cvs服务到底启动没
[root@zhangyf~]#ccstat -l | grep cvspserver
因该有如下结果:
tcp 0 0 *:cvspserver *:* LISTEN
说明cvs的2401port正在监听,恭喜!证明cvs服务启动成功了!。

相关文档
最新文档