1.1 1.1 编写目的
安装、配置、使用CVS,保持系统版本统一
1.2 1.2 参考资料
暂缺
2 2 安装CVSNT
2.1 2.1 安装
按默认配置安装即可
2.2 2.2 配置CVSNT(CVS服务)
运行CVSNT Control Panel程序,切换到第二个标签Repository Configuration,点击add按钮,操作如图所示:
作用说明:该步骤是指定cvs服务器所管理的文件夹(配置服务器管理仓库)。
参数说明:location - 指定cvs服务管理目录;
Name - 指定cvs服务名称(客户端链接时需要用到)
Description -为服务添加描述(意义不大)
其他设置均按默认即可。配置完成后点击Ok。
3 3 安装WINCVS
3.1 3.1 安装
按默认配置安装WINCVS
3.2 3.2 配置WINCVS
1、 指定文件存放目录:菜单项View -> Browse Location-Change,选择本地文件夹
2、 登陆CVS服务器:菜单admin->login,填入:pserver:www@192.168.0.3:/repository,如图:
在wincvs上选择菜单:Admin->login,出现如下对话框:
必填项:cvsroot,其中www是登陆服务器的账户,192.168.40.28是服务器IP,repository是服务目录。确定后会提示输入密码。
注意:在CVSROOT中输入的路径必须是在CVSNT中指定的路径。以上示例中的www是登陆服务器的账户,提示输入的密码也是登陆服务器的密码,一般而言,如果将某台机器设置为CVS服务器,那么相应的要在该机器上添加一个账户,用于专门的cvs操作!ok后会提示输入密码。
在admin目录(即本地文件存放目录)上右键选择checkout module,下载CVSROOT至本地目录。
修改config文件: #SystemAuth=yes 改为 SystemAuth=no
重启CVSNT
修改checkoutlist文件,在该文件末尾添加一行:
[空格]admin error message
4 4 向CVS添加用户
4.1 4.1 添加用户
在cvsnt上选择admin菜单下的command line….菜单将出现如下对话框:
点击确定以后如果弹出密码框,那么创建正确,连续两次输入密码就可以了!
语法:cvs passwd -r www -a username
注意,其中username 是登陆CVS账户,如zhangsan,www是登陆服务器账户。另外,添加用户前必须登陆CVS服务器。
4.2 4.2 修改用户权限
cvs chacl -a all -u username
执行完这一步以后可以在wincvs上登陆,成功以后就可以在Eclipse下载和上传了!
需要注意的是,如果该CVS是第一次使用,那么CVS服务器上当然是没有项目的,所以必须在本地MyEclipse上登陆CVS然后Share项目,以后的用户就可以Check Out了!
5 5 在Eclipse中配置CVS
菜单项Window-Open Perspective-Other,选择CVS Repository Exploring视图
在CVS Repositories面板右键选择New-Repository Location,配置如图所示:
User和password使用自己的账号登录
配置完成后如果已有项目发布,显示如图所示:
Epmis即为已发布的项目,在epmis上右键check out可将项目下载至本地(建议在下载新项目前先在本地创建一个同名Project,选择File-New-Project弹出窗口中的MyEclipse-J2EE Projects-Web Project)
如果要发布新项目或是连接到CVS上的项目,切换至myeclipse视图,在要发布的项目上右键选择Team-Share Project,根据提示完成操作即可。
在连接到CVS之后,如果要上传文件,在选中的文件或文件夹上右键选Team-Commit;要下载文件至本地目录,右键选Team-Update。
===================CVS常识性知识介绍====================
CVSNT是服务器管理工具,再在客户端下个WINCVS就可以(关于wincvs使用,可以在网上找下,因为eclipse已经很好地集成了cvs)就可以一起协同工作了。这二天我从下载CVSNT到用eclipse新建项目,共享项目,不同的客户端导入项目都在公司局域网内的不同机子上测试通过。记录如下:
首先从http://www.cvsnt.org处下得你想要的cvsnt版本,我下的是2.5.03,安装完成后。从程序中打开cvsnt control panel(CVSNT 控制面板)。下面开始配置CVSNT,主要是创建资源并让它可以通过客户端的IDE (eclipse)来访问。
开始配置cvsnt:
a 查看运行状态:
在about面板有个cvsnt 和 cvsnt lock二个选项,这儿可以对其进行start,stop服务
b 添加资源
在repository config面板中可以添加删除资源,这儿主要设定了repository 的name and root值。如我在这儿将name设置为/mycvs,root为e:/mycvs。创建后会在对应的目录下生成cvsroot文件夹及cvs相关配置文件。 OK,确定。这个地方可以要重启服务才能生效
c 兼容:
在conpatibility option 面板上选择兼容的版本,注意一定要勾上respond as cvs 1.11.2 to version request,为了与eclipse中的cvs兼容(在eclipse中的cvs版本很可能与你cvsnt版本不同)。
好了,现在服务器上的资源路径已经设定好了。
通过IDE共享一个工程
打开eclipse新建一个项目,然后在项目上右击/team/share project (小组/共享项目),在弹出的share project whith cvs reposity对话框中选择一个cvs路径(第一次当然是新建了),在host中填入CVSNT的主机地址如:192.168.12.17,在repository path中填入cvsnt中的name值如:/mycvs。user中写cvsnt所分配的用户名,password中写入密码(下面将会讲些cvs中如何管理用户)。在connection type中一般选择pserver连接类型。然后就是记住密码什么的... :-)。OK ,NEXT提示一路完成!
在客户端从cvs上导入共享工程:
在客户端的eclipse中打开cvs视图,根据CVSNT的路径及其给你所分配的用户相关信息新建一个CVS的资源路径。ok,开始引入共享工程了:
可以直接从cvs中check out出来,也可以从new/project/cvs/projects from cvs。选中你刚刚把建立cvsnt资源路径,你可以在use an existing module中看到所有的共享项目了。然后选择一个你想导入的项目check out出来到本机....
全部完成^_^,本来想剪几个图上来的,有些麻烦,太不方便了。不过过程比较简单,很快就可以搞定。客户端将cvsnt上的工程检出是比较简单的。主要是在cvsnt上的相关配置。我在网上找了些资料,完成了如添加不同的用户。介绍有个cvsnt的GUI工具可以直接图形化操作。看介绍很easy ,下载URL:http://www.kdeopen.com(偶一直打不开,郁闷,希望各位运气比我好) 。我只好在控制台下添加删除用户了。
cvsnt用户管理
在用户管理中以下是cvs的一些命令参数
Usage: cvs passwd [-a] [-x] [-X] [-r real_user] [-R] [-D domain] [username]
-a Add user
-x Disable user
-X Delete user
-r Alias username to real system user
-R Remove alias to real system user
-D Use domain password
服务器工作在CVSNT用户单一验证方式下的时候,文件passwd定义了CVSNT的用户信息,这里面保存着用户名,用户密码,以及别名信息。默认状态下 没有该文件,但是我们可以在CVSNT还工作在混合验证方式下时,用系统管理员登录,通过添加用户命令来让CVSNT自动建立一个passwd文件。
登录:login
cvs -d :pserver:administrator@127.0.0.1:/mycvs login
添加用户
cvs -d :pserver:administrator@127.0.0.1:/mycvs passwd -a zyx
之后系统提示输入密码,输入后服务器会新建一个passwd文件。该文件的内容很简单,形式如下:
zyx:YT2p2NmdmUlEg:
以第一行为例:zyx为用户名,YT2p2NmdmUlEg为CVS使用UNIX标准加密函数对密码进行加密后的结果。
若想以混合验证的方式验证得对应一个window的系统用户名(zyinxin),这时就用参数-r来指定,如:
cvs -d :pserver:administrator@127.0.0.1:/mycvs passwd -r zyinxin -a zyx
这时生成文件内容如下:
zyx:YT2p2NmdmUlEg:zyinxin
zyinxin为该用户的别名(它是参考系统用户),
注意:这个文件是不能在客户端进行修改的,不能checkout出来。
添加完成后你可以通过login来测试用户zyx是否创建成功
删除用户:
cvs -d :pserver:administrator@127.0.0.1:/mycvs passwd -x zyx
=====================CVS常用命令介绍===================
使用CVS进行版本控制实战
说明:本例的CVS的客户端和服务器端都装在同一台机上。
一. 服务端CVSNT篇
1. 安装与配置
下载地址:http://www.cvsnt.org
本文下载的是当前的最新版2.5.03。
双击下载得到的cvsnt-2[1].5.03.2382.msi文件,开始进入安装,点击“运行”按钮,进入安装的欢迎界面,接着点击“Next”按钮,进入是否接受用户协定页面,用户勾选“I accept…”选择,接受用户协定后,点击“Next”按钮,进入选择安装模式页面,如下图所示:
在此存在三种安装模式,即典型、自定义和完全安装,笔者选择的是典型安装,选择后点击“Next”按钮,进入安装准备页面,如下图所示:
在该图中点击“Install”按钮开始进入安装,安装完成后弹出安装完成页面,点击安装完成图的“Finish”按钮完成安装。安装完成后,会提示用户是否现在就重启系统来使安装生效,如下图所示:
点击“Yes”按钮重启系统。
安装完成后,还需要配置CVS的知识仓库,读者可以首先在E盘下建立CVS目录,用来作为CVS的知识库。通过“程序”-> CVSNT -> CVSNT Control Panel进入CVSNT的控制面板,点击“Repository configuration”页签,点击“Add”按钮,弹出服务端参数设置页面,在location中选择之前建立的知识仓库目录,内容如下所示:
点击“OK”按钮,完成CVS知识仓库的建立。此时我们打开E:/CVS文件夹,可以看到在该目录夹下被新建立了一个CVSROOT目录。
当不同的cvs客户端连接CVS时,考虑到兼容性等问题,读者还需要切换到Compatibility标签,将Response as cvs 1.11.2 to version r选项勾上。
为了测试CVSNT是否成功,我们可以在命令行下输入CVS命令,如果弹出如下信息,则表示安装成功:
读者若想查看所安装的CVSNT的版本信息,可以通过输入cvs version,本文安装的版本为2.5.03。
2. CVS的分布
CVS 是典型的 C/S 结构的软件,因此它也分成服务器端和客户端两部分。如下图所示:
3. CVSNT的基本工作思路
在一台服务器上建立一个知识仓库,仓库里可以存放许多不同项目的文件。
每个用户在使用仓库之前,首先要把仓库里的项目文件下载到本地。用户做的任何修改首先都是在本地进行,然后用 CVS 命令进行提交。
仓库概念如下图所示:
4. 常用命令和语法
在CVSNT中,有很多常用命令,例如添加CVS用户、将CVS用户绑定到操作系统、登录CVS、检出(check out)文件或目录、提交文件或目录、删除文件或目录等,将本小节中,我们在本小节中将分别进行讨论。
为了能够进行添加和修改用户等等的操作,还需要设置CVS的资源库,在此我们需要设置CVSROOT环境变量,进入“我的电脑”-> “高级”-> “环境变量”,在系统变量中设置名为CVSROOT的环境变量,在本文中,CVSROOT变量的值设置为:E:"CVS。
注意:在设置完成后,为了使设置生效,需要在服务中重启CVSNT的两个服务:CVSNT Dispatch service 2.5.03.2382和CVSNT Locking Service 2.5.03.2382。否则在下面的新增CVS用户等步骤中会出现没有设置CVSROOT的错误。
1)新增CVS用户
命令为:cvs passwd -a <cvs用户名>
例如,新增一个用户名为AmigoXie的用户,可在命令行输入如下语句:
cvs passwd -a AmigoXie
按下Enter键后,在命令行中输入设置的密码,笔者在此处输入为:19821121,按Enter后再输入确认密码,
2)绑定CVS用户到操作系统
命令为:cvs passwd -r winUser cvsUser
例如,将在1)中建立的CVS用户AmigoXie绑定到操作系统用户AmigoXie,命令为:cvs passwd -r AmigoXie AmigoXie,按下Enter键后,提示输入新密码和确认密码,输入后,即完成了绑定CVS用户到操作系统的操作。
3)取消CVS用户到操作系统的绑定
命令为:cvs passwd -R cvsUser
例如,读者输入命令:cvs passwd –R AmigoXie,按下“Enter”键后输入新密码和确认密码,即完成了CVS用户AmigoXie到操作系统的绑定。
4)将用户状态置为无效
命令为:cvs passwd -x cvsUser
例如,读者输入命令:cvs passwd -x AmigoXie,按下“Enter”键,即完成CVS用户AmigoXie的状态改变。
5)删除某用户
命令为:cvs passwd -X cvsUser
例如,若读者想删除名称为AmigoXie的CVS用户,在命令行下输入如下命令:
cvs passwd -X AmigoXie
按下Enter键后,会出现成功删除该用户的提示信息。
6)浏览CVS的模块信息
命令为:cvs ls
在命令行下输入cvs ls,可看到CVS当时的模块信息,至少包括一行记录,即CVSROOT。
7)从服务器取出项目和文件
命令为:cvs checkout projectname
例如,我们想要取出CVSROOT项目,可在命令行中输入:
cvs checkout CVSROOT
按下“Enter”键后,在命令行中会出现各文件的取出信息。该命令可将最新版本的源代码导出到相应目录汇中(在此进入的是C:"Documents and Settings"AmigoXie目录,所以CVSROOT被导入该目录中)。
8)更新CVS的文件或项目
命令为:cvs update file_name
其中file_name可以不指定,不写时表示同步所有子目录下的文件。我们首先在E:/CVS目录下建立CVSProject目录,同时通过命令set cvsroot=:sspi:localhost:E:/CVS/CVSProject将其设置为CVS的module,设置成功之后,在命令行中运行cvs ls,可看到除了CVSROOT外,多了CVSProject这个module。我们通过7)中的checkout命令(cvs checkout CVSProject)将其取出。此时在命令行中输入cvs update,即可完成该工程的更新操作。
9)添加文件或目录到CVS服务器
命令为:cvs add new_file_or_folder
我们首先在我们下载的CVSProject目录下建立一个amigo目录,和一个amigo.txt文件,在命令行中进入C:"Documents and Settings"AmigoXie"CVSProject目录后做如下操作:
在上图中可以看到文件和目录添加成功的信息,此时我们进入E:"CVS"CVSProject目录,可看到多了amigo目录和amigo.txt文件。
10) 添加文件或目录到CVS服务器
命令为:cvs commit -m "comments" file_name
我们修改C:"Documents and Settings"AmigoXie"CVSProject目录下的amigo.txt文件,在该文本文件中加上内容:amigo。此时在命令行中输入:
cvs commit -m "修改后的文件" amigo.txt
可看到运行结果如下:
此时进入E:"CVS"CVSProject目录,可看到多了amigo.txt,v文件,查看文件内容时可以看到该文件中记录了更新信息。
11) 查看文件版本信息和修改信息
命令为:cvs log file_name
例如,在命令行中输入cvs log amigo.txt,可在命令行中看到该文件的修改信息,以及修改时的注释等信息。
12) 版本比较功能
命令为:cvs diff file_name
查看当前文件和库中文件的区别可用如上的命令,例如修改amigo.txt文件后运行cvs diff amigo.txt命令,可在命令行中看到相关的修改信息。
查看文件不同版本的区别,可用类似语句:
cvs diff –r 1.1 –r 1.2 file_name
13) 删除CVS文件或目录
命令为:cvs rm –f file_name
cvs commit -m "reason to delete" file_name
例如,我们在命令行下输入如下信息,可删除在10)中建立的amigo.txt文件,如下图所示:
二. 客户端WinCVS篇
WinCVS是CVS的一个客户端程序,它以CVS作为基础,它运行在Windows上,在其上构造了功能强大的GUI,使得Windows平台上的CVS用户能非常容易的进行协同工作。它可以用来在Windows上登录CVS服务器,然后进行一些CVS相关的操作与管理。
1. 安装与配置
英文版下载地址:http://sourceforge.net/project/showfiles.php?group_id=10072
读者可以自行下载WinCvs 2.1.1版本,笔者下载的是WinCVS的中文版1.3版,下载地址为:http://www.8848software.com/wincvs/。
在安装WinCVS中文版前,需要首先下载python,下载地址为:http://www.python.org/download/,笔者下载的是2.1.3版本。
注意:WinCVS仅支持python2.2.3以下的版本,其它更新的版本会出现一些问题,请注意是否下载了正确的版本。
点击下载的wincvs.exe文件,并按照安装步骤完成安装后,打开WinCVS,操作界面如下所示:
我们还需要在WinCVS中进行登录配置,点击“管理”-> “设置”,弹出设置页面,笔者的设置如下:
点击“确定”按钮设置完成后,点击“管理” -> “登录”,在弹出的登录设置页面中点击“确定”按钮,接着弹出口令认证页面,输入用户AmigoXie的密码信息19821121,点击“确定”,若在控制台的末尾看到信息“***** CVS exited normally with code 0 *****”,则表示登录成功。下载下来的项目默认放在C:/tmp目录下。
2. 常见操作
1)新增文件或目录
在C:/tmp/CVSProject目录下新建doc目录,在WinCVS中点击左边的C:/tmp/CVSProject文件夹,在右边的显示框中可以看到该新增的文件夹,选择doc文件夹后点击红色的新增按钮,即完成该文件夹的新增。
接着在doc目录下建立sterning.txt文件,在WinCVS中进入doc目录后可看到如下信息:
点击新增按钮后,状态如下:
2)提交文件或目录
在1)中选择sterning.txt后,点击右键,选择“提交选项”,出现输入注释信息框,点击“确定”按钮,即完成了目录的提交。目录提交方式与该操作方式一样。
3)更新文件或目录
例如,在C:"tmp"CVSProject"doc目录下删除sterning.txt文件后,在WinCVS中选择doc目录,右键选择“更新选项”,即可sterning.txt文件重新被下载到doc目录下。
4)版本比较
依照1)和2)中的步骤在doc目录下新建amigo.txt文件,并将其提交到CVS,文件内容为amigo,同时修改C:"tmp"CVSProject"doc下的该文件(添加新行,新行内容为sterning)。在WinCVS中选择该文件后,点击右键选择“比较选项”,在弹出的“比较设置”框中点击“确定”按钮,即可看到客户端的版本同服务器上的最新版的比较信息,如下图所示:
在上图中清楚的显示了本地(右边)比服务器上的最新版(左边)多了一行。
5)删除文件或目录
例如,在WinCVS中选择需删除的一个或多个目录,点击操作栏的黑色的删除选项,操作成功后这些被删除的文件状态为红色的叉叉,选中这些文件,选择“提交选项”,即可完成删除操作。
本质上CVS是不会删除任何文件和目录的,即使是执行了以上操作,删除了某些文件,远端CVS实际执行的是将提交删除的文件放到了一个叫【Attic】的目录下,因此,这些被删除的文件是可以通过一定的方法恢复的。
6)给项目| 模块打上标签
在项目开发中的一些阶段性等时刻,可以通过WinCVS来给项目或模块打上标签,方法如下:
选择CVSProject工程,选择操作栏靠左的“T”(创建标签)按钮,弹出“创建标签设置”框,填写标签名等信息,例如输入的标签名为branch-release-1-1,点击“确定”按钮,可给该版本的文件都打上了branch-release-1-1的标签。
7)导入项目|模块到CVS
在C:"tmp目录下建立Test文件夹,并在该文件夹下建立amigo.txt文件,在WinCVS左边操作栏中选择C:"tmp"Test文件夹,点击右键选择“导入项目|模块”,弹出“导入过滤器”框,选择“继续”按钮,弹出“导入设置”框,可采用默认设置,点击“确定”按钮即完成该项目或模块的导入。
8)从CVS上检出项目|模块到本地路径
在WinCvs中选择某个文件后,点击右键,并选择“检查项目|模块”选项,弹出检出设置框,在“检出设置”页签中填写相关信息,笔者填写的信息如下所示:
点击“确定”按钮后完成项目或模块的检出,在E:"盘下可看到检出的项目或模块。
注意:若想导出打了某个标签的版本,读者可在上图的“检出选项”中进行相应设置,
三. 总结
在本文中,笔者详细讲述了CVSNT和WinCVS的知识,包括两者的安装配置、CVSNT的常用命令、WinCVS的常见操作等知识,读者通过阅读本文,可以在应用CVS进行版本控制时能够更加的熟练自如。
================CVS用户权限配置(高级)===============
关于权限管理的操作,我感觉不错的
假设有用户1:lxw ;用户2:zxh
有用户1的模块::lxwdir;用户2的模块:zxhdir
要求 lxw 只能访问lxwdir;zxh只能访问zxhdir
第1步,设置CVS的库配置文件(模块CVSROOT)的访问权限
方法:建立超级用户的工作目录 WINCVSADMIN
a.以cvsnt服务器超级用户administrtor 登陆 wincvs
b.CHECKOUT 库控制文件 checkout moudel 'cvsroot',此目录下的文件为CVS的高级配置文件,可以在本地进行修改,提交,本身在版本控制之中
c.修改CVSRoot的访问权限,在命令行输入如下命令 #之后为说明,不需要输入 每行命令要单独执行,这是4条命令
cvs chacl default:n #取消所有用户的默认权限
cvs chacl administrator:rcw #设置Administrator拥有所有权限 读取;创建和删除;写入
cvs chown administrator #更改的拥有者Administrator
cvs lsacl #察看权限的设置情况
第2步,建立CVS的用户
正常可以用WINNT 系统的用户作为CVS 的用户,访问CVS ,但是这种方式安全性太差
可以建立CVS 自己的用户
a.建立WINNT系统用户 CVSUSER,权限设为一般用户就可以,只要能访问WINNT就可以
b.建立密码文件PASSWD,
直接在服务端 CVSROOT 目录下建立文件就可以 PASSWD
出于安全考虑,不要将 passwd列在 checkoutlist 文件里面。
C.建立CVS用户
在WINCVS 命令行下输入命令
cvs passwd -a -r cvsuser zxh #建立ZXH用户与系统用户cvsuser有一样的权限,回车后提示输入两次口令
cvs passwd -a -r cvsuser lxw #建立lxw用户与系统用户cvsuser有一样的权限,回车后提示输入两次口令
cvs passwd -a -r administratro administrator #建立administrator用户与系统用户administrator有一样的权限,回车后提示输入两次口令
可以看到PASSWD 文件多了两行
zxh:CUXQwLMdoZHNs:cvsuser #中间为加密的密码,密码使用Unix标准的crypt()函数加密
lxw:ZTUCMKUkZ6ap2:cvsuser
administrator:oN2Stm4NIf31Q:administrator
第3步, 使用CVS用户登陆
由于CVS 在默认模式下,是采用系统用户登陆的,这就要修改配置文件 CONFIG
设置文件CONFIG为修改状态
加入如下一行
SystemAuth=no #yes 默认值,表示 如果用户在PASSWD文件中不存在,就用系统用户检查权限是否正确
#no 表示用PASSWD检查用户密码权限是否正确
之后提交
(在设置CONFIG 文件SystemAuth=no 之后
需要在cvs 控制目录cvsroot/ 下建立admin文件
这个文件是指定CVSNT的管理员列表的文件,CVSNT根据这个文件来判断一个用户是否是管理员。文件的内容很是一个用户列表。如下:
user1
user2
user3
这些代表user1,user2,user3都是管理员 ;
在此之前 cvs将服务器的管理员用户作为自己的管理员用户的)
第4步,加入文件 WRITERS ,READERS 控制用户的读写权限
在cvsroot目录下加入两个文本文件,WRITERS ,READERS
其每行内容为 用户名 回车
只有加入WRITERS中的用户才能进行提交
加入READERS中的用户只能读取
同时在两个文件中的用户只能读取
在writers文件中加入如下
zxh
lxw
administrator
第5步, 配置CVS库模块文件——modules
a.将MODUES文件设为可编辑状态
b.在MOUDES 加入如下3行
CVSRoot CVSRoot
大狼的工作目录 -a lxwDIR
开心的工作目录 -a ZXHDIR
c.保存,提交 COMMIT
第6步, 为2个用户分别上传工作目录
选中LXW的工作目录'LXWDIR' IMPORT MODULE
选中ZXH的工作目录'ZXHDIR' IMPORT MODULE
注意:上传的目录不能为空目录,其下必须有文件(啥文件都行)
上传成功后,删除这2个目录OR 改名
(补充一下分组的使用方法:
分组:将权限相同的用户划分到一组,这样方便维护。就是角色的意思,分组使用在对模块访问权限的划分。
方法:
a.在服务器端 cvsroot 目录下新建文件 group
b.建立分组 group1,group2 ,group文件内容如下
group1:user1 user2 user3
group2:user5 user6 user7
c.之后对组进行权限划分,和对单个用户方式一样,就可以使组内用户和组具有相同的权限,如 选中模块,执行如下命令
chacl -R default:n
cvs chacl -R group1:rcw
cvs lsacl
可以使,用户 user1 user2 user3 同时具有对该模块的读写和控制的权限
第7步,下载目录目到本地做权限设置 CHECKOUT MODULE
CHECKOUT MODULE 选择 大狼的工作目录 'LXWDIR'
CHECKOUT MODULE 选择 开心的工作目录 'ZXHDIR'
做法是这样的
选择 菜单/remote/checkou moudule
在打开窗口中 点击‘...’ 按钮
在打开窗口中选择 大狼的工作目录
ok 按钮
确定 按钮
第8步 分别设置2用户(LXW;ZXH)对各自目录的访问权限
选中模块 LXW ,在命令行输入如下3条命令,
cvs chacl -R default:n
cvs chacl -R LXW:rcw
cvs lsacl
选中模块 ZXH ,在命令行输入如下3条命令,
cvs chacl -R default:n
cvs chacl -R ZXH:rcw
cvs lsacl
说明 加 ‘-R ’参数表示对模块的权限是递归的。解释一下:
如目录结构 dira
|---dira1
|---dira2
命令:cvs chacl default:n 只对 目录 dira 有效,而对子目录无效
cvs chacl -R default:n 对目录dira及其下子目录都有效
第9步 已经完成了设置
以用户 LXW OR ZXH 登陆WINCVS 就只能CHECKOU 各自的模块 LXWDIR,ZXHDIR
进行相应的开发工作了
在执行命令cvs passwd -a -r cvsuser zxh 的时候
在本地目录 CVSROOT 目录下的PASSWD文件里没有生成相关的用户和密码
而在服务器 CVSROOT 目录下的PASSWD文件里生成了相关的用户和密码
如果是这样,是一种正常现象
原因是你没有把passwd 控制文件加入到 cvs版本 控制之中—文件checkoutlist里