如何处理用TortoiseCVS登录远程CVS服务器老出错的问题

如何处理用TortoiseCVS登录远程CVS服务器老出错的问题,第1张

天互数据 为您解答,希望能帮到你
服务器端工作环境:
a *** 作系统:Linux(CentOS63-64bit)
b 安装CVS Server/Client版本:cvs-11123。(Linux下CVS的安装、配置与使用(一):安装与本地使用)
客户端工作环境:
a *** 作系统:Windows7(64bit)
b 可视化CVS客户端:TortoiseCVS version1125。TortoiseCVS 是一款在Windows上运行的CVS客户端,摆脱了传统cvs的命令行交互方式,取而代之是更加直观的界面 *** 作,当然底层的交互还是基于cvs命令。TortoiseCVS的另一个重要的特点就是完全结合到资源管理器的鼠标右键菜单中进行 *** 作,异常简单和方便。
2 服务器端的配置
a cvs -v查看CVS是否已经安装,如果没有安装先按照文章(一)安装
[root@localhost Desktop]# cvs -v
Concurrent Versions System (CVS) 11123 (client/server)
Copyright (C) 2006 Free Software Foundation, Inc
b 设置系统用户组
假设我们部门有两个项目组,代号分别是长江和黄河。正常情况下,长江组的成员不能去导出或者修改黄河组的代码,反过来也一样。为了限制不同项目组的权限,我们必须设置不同的系统用户组。另外我们可能还需要一个管理员,拥有并管理所有的项目组代码库。综上,我们设置CJ_GRP、HH_GRP系统用户组对应长江和黄河两个项目组,另外设置cvsroot用户作为资源库(repository)的所有者。
[root@localhost ~]# groupadd CJ_GRP
[root@localhost ~]# groupadd HH_GRP
[root@localhost Desktop]# useradd cvsroot
c 设置各个用户组的用户
现在我们已经有两个个不同的用户组,接下来就是把开发人员的账号 加到各自的项目组中,并设置密码。假设cj_dev和hh_dev分别为长江和黄河项目组的开发人员账号。
[root@localhost ~]# useradd -g CJ_GRP cj_dev
[root@localhost ~]# useradd -g HH_GRP hh_dev
[root@localhost cvsroot]# passwd cj_dev
Changing password for user cj_dev
New password:
Retype new password:
passwd: all authentication tokens updated successfully
[root@localhost cvsroot]# passwd hh_dev
Changing password for user hh_dev
New password:
Retype new password:
[root@localhost ~]# id cj_dev
uid=504(cj_dev) gid=507(CJ_GRP) groups=507(CJ_GRP)
[root@localhost ~]# id hh_dev
uid=505(hh_dev) gid=508(HH_GRP) groups=508(HH_GRP)
d 指定资源库(Repository)
切换到cvsroot用户,在/home/cvsroot/目录下新建一个cvsrepo目录,并指定为我们的代码库
[root@localhost ~]# su cvsroot
[cvsroot@localhost root]$ cd
[cvsroot@localhost ~]$ mkdir /home/cvsroot/cvsrepo
[cvsroot@localhost ~]$ cvs -d /home/cvsroot/cvsrepo/ init
指定repository之后,/home/cvsroot/cvsrepo/目录下生成了一个CVSROOT的目录,用以对repository的管理。
e 导入(import)项目模块(module)
我们在/home/cvsroot/下新建cj_pro和hh_proj分别表示长江和黄河两个项目的文件夹,并到各自目录下将项目的文件导入repository。
[cvsroot@localhost ~]$ mkdir /home/cvsroot/cj_proj
[cvsroot@localhost ~]$ mkdir /home/cvsroot/hh_proj
[cvsroot@localhost ~]$ cd /home/cvsroot/cj_proj
[cvsroot@localhost cj_proj]$ cvs -d /home/cvsroot/cvsrepo/ import -m "changjiang project" cj_proj vendortag releasetag
No conflicts created by this import
[cvsroot@localhost cj_proj]$ cd /home/cvsroot/hh_proj/
[cvsroot@localhost hh_proj]$ cvs -d /home/cvsroot/cvsrepo/ import -m "huanghe project" cj_proj vendortag releasetag
No conflicts created by this import
f 设置Repository里各项目模块文件的权限
通过cvs import命令导入项目模块后,repository目录下就多了我们导入的两个项目模块。为了区别不同项目组的权限,把项目模块的所属的组改为各自项目对应的用户组(得切换到root用户才有权限修改)。另外,还要注意的是开发人员访问各自的项目目录时,需要在CVSROOT生成lock文件,所以CVSROOT必须对项目开发人员有读写权限。我们可以新增一个CVS_GRP组,使之成为各个开发人员的附加组。同时该CVSROOT目录所属的组为CVS_GRP,这样各个开发人员都有权限在CVSROOT创建lock文件,从而能够正常地导入导出项目代码。
[cvsroot@localhost hh_proj]$ cd /home/cvsroot/cvsrepo/
[cvsroot@localhost cvsrepo]$ ll
total 12
drwxrwxr-x 2 cvsroot cvsroot 4096 Jan 15 20:05 cj_proj
drwxrwxr-x 3 cvsroot cvsroot 4096 Jan 15 18:38 CVSROOT
drwxrwxr-x 2 cvsroot cvsroot 4096 Jan 15 20:18 hh_proj
[cvsroot@localhost cvsrepo]$ su
Password:
[root@localhost cvsrepo]# groupadd CVS_GRP
[root@localhost ~]# usermod -G CVS_GRP cj_dev
[root@localhost ~]# usermod -G CVS_GRP hh_dev
[root@localhost cvsrepo]# chgrp -R CJ_GRP cj_proj
[root@localhost cvsrepo]# chgrp -R HH_GRP hh_proj
[root@localhost cvsrepo]# chgrp CVS_GRP CVSROOT
[root@localhost cvsrepo]# ll
total 12
drwxrwxr-x 2 cvsroot CJ_GRP 4096 Jan 15 20:05 cj_proj
drwxrwxr-x 3 cvsroot CVS_GRP 4096 Jan 15 18:38 CVSROOT
drwxrwxr-x 2 cvsroot HH_GRP 4096 Jan 15 20:18 hh_proj
以上步骤就可以满足使用RSH/SSH作为远程访问repository的服务器端配置\

Host写对方IP
Repository写CVS服务器的Name,比如保存路径为D:/CVS则就写/CVS
User写服务器用户名
password写服务器密码
其他不要选,按确定。然后连接,然后在File菜单里面选择Import然后选择CVS project,随后依次选择就可以了

Host写对方IP
Repository写CVS服务器的Name,比如保存路径为D:/CVS则就写/CVS
User写服务器用户名
password写服务器密码
其他不要选,按确定。然后连接,然后在File菜单里面选择Import然后选择CVS project,随后依次选择就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10854168.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存