I. CVS Server/Client 安装
Server: CVSnt 2.0.51d
(http://www.cvsnt.org/archive/, 全部版本的CVSnt 下载)
Client: winCVS 1.3.20.2 (下载的CVSnt 2.0.51d 中有)
activeTCL 8.4.1.0-2
python221
注意事项:
1. winCVS/CVSnt 的版本必须没有冲突;
2. CVSNT 服务器只能安装在 WinXP/2000/2003 系统;
3. 在运行安装程序的时候关闭所有的杀毒软件,如 Norton Antivirus;
4. 在Windows2003上安装CVSnt 的时候关闭 WMI 服务.
II. CVSnt 仓库管理
(以下所有的操作都在服务器上进行)
1. 打开 程序 -> CVSnt -> 'Service Control Panel';
2. 如果服务已经运行,就停止服务;
3. 点击 'Repositories(仓库)' -> 'add' ->输入Repositories(仓库)的路径 (如. 'c:/cvs/repository1') ;
4. 改变仓库的名字 (如. '/repository1');
5. 点击'Advanced' -> 'Temporary' 指向一个您想要的临时目录;
6. 点击'Apply' 按钮 (重要!);
7. 启动 service;
要点:
repository 和 temporary 必须是 CVSNT 服务器上的目录.
III. CVSnt 用户管理
A. Windows 和 CVS 结合的认证方式(默认方式)
B. CVS 独自认证
要求:
1. 取消选择CVSnt -> service control panel ->advanced 下的 'impersonation enable' 选项 ;
2. 选中 'use local user for pserver authentication instead of domain user';
3. 启动'cvs service' 和 'cvs lock service' ;
4. 使用 'pserver' 协议.
步骤:
(所有的操作在客户机完成)
1. 用默认的系统管理员帐户(Administrator)创建CVS用户'cvsadmin' ,并且给'cvsadmin'在CVSRoot目录的全部的权限
(1) 运行 winCVS;
(2) 用默认的系统管理员帐户'Administrator'登陆库:
选择菜单 'Admin->Login', 在CVSRoot方框内输入
:pserver:Administrator@serverIP:/repositoryNAME
输入服务器上的'Administratotr'帐户的密码
(3) 创建一个临时目录 'c:\cvs\admintemp';
(4) Check out 模块 'CVSRoot' 到这个临时目录, 转到'CVSRoot'目录;
(5) 为当前的库添加一个新的CVS用户 'cvsadmin' , 打开 admin-> Command line 执行如下命令:
cvs passwd -a cvsadmin
( 为cvsadmin设置密码)
(6) 给予 'cvsadmin'用户'CVSRoot' 库的所有权限, 执行如下命令:
cvs chown cvsadmin ( 设在cvsadmin为 'CVSRoot' 库的所有者)
cvs chacl default:n ( 取消所有的默认权限)
cvs chacl cvsadmin:cwr ( 给cvsadmin所有的权限: CREATE, WRITE, READ )
(7) 关闭winCVS,删除'c:\cvs\admintemp' 目录;
2. 为库创建管理员用户 'cvsadmin'
(1) 用'cvsadmin'帐户登陆仓库: 'admin->login', 在CVSRoot框中输入
:pserver:cvsadmin@serverIP:/repositoryNAME
输入'cvsadmin' 帐户的密码.
(2) 为CVS管理创建一个目录'c:\cvs\admin' ;
(3) Check out 'CVSRoot' 模块到这个目录(c:\cvs\admin);
(4) 转到 'CVSRoot' , 创建文件admin, 内容为cvsadmin, 执行如下命令:
cvs add admin ( 添加'admin' 文件到库 )
cvs commit -m "no msg" admin ( check in 'admin' 文件)
(或者是: cvs ci -m "no msg" admin)
(6) 修改'checkoutlist'文件,在最后一行增加admin error message , 执行如下命令:
cvs commit -m "no msg" checkoutlist ( check in 修改)
(7) 现在, 'cvsadmin' 用户已经成为CVSRoot库的管理员了;
3. 更多的用户管理
(1) 添加一个新用户,并执行:
cvs passwd -a usernamezxxxccccccccvvv
(2) 改变用户的权限:
cvs chacl -R [-r tag] {user|default}:[{[r][w][c]|[n]}] [directory...]
-R, 递归设置许可
-r, 为详细的分枝设置许可
备注
1. 上面的所有操作都可以在 winCVS 的 'Admin->Command Line' 或者 dos 命令行窗口, 例如登陆:
set cvsroot=:pserver:cvsadmin@server:/repo
cvs login
2. 对于一个用户组,通常只有一个库与之相关
3. As to user's rights, just one specific directory be concerned.
IV. 项目管理
1. 当一个新的目录(项目)被 checked in 到 CVSnt (创建一个新的module)之后,
必须删除本地的目录,然后从CVS服务器check out 到本地,这样(目录)才能被CVS控制.
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=471858