文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>安装好了CVS,可以进行我的版本控制了

安装好了CVS,可以进行我的版本控制了

时间:2007-05-10  来源:rockylinux

按照网上的方法,实现了CVS安装配置,最近一直在做Eclipse下的Java开发,自己做也没怎么想要进行CVS什么的,不过对程序的备份也感到很麻烦,还得自己去压缩备份,看到书上说的CVS控制,想还是来个自动的吧,这样也算是与实际接轨了,呵呵。
参考了下面的文章,是谁写的,我不知道,不过非常感谢这位作者,写的很详细,能够一下看明白,也能够成功的实现。(rockylinux)

cvs服务在linux下的安装与配置

关键词: CVS    linux                                          

1、   验证是否已安装CVS
#rpm -q cvs
如果能显示出类似这样的版本信息,证明已安装CVS:
#cvs-1.11.19

若没有安装信息,则需要从htttp://www.cvshome.org 下载相应的安装包

我的安装环境是  linux as4 u2

若不想使用自带版本,可以用

#rpm –e cvs

删除自系统自带的cvs 安装包

从htttp://www.cvshome.org获取最新的安装包cvs-1.11.21.tar.gz

解压该包并安装:

# tar zxvf cvs-1.11.21.tar.gz

进入解压包 cvs-1.11.21

# ./configure –prefix =你的安装目录 &&make &&make install

2、   创建CVS用户组与用户
root用户下执行以下命令:
#groupadd cvs
#adduser cvsroot
#passwd cvsroot

#输入cvsroot用户密码

3、创建CVSROOT  (CVS仓库的根目录)
root用户下执行:
#mkdir /cvsroot  此处可改为你想要的cvsroot路径
#chown cvsroot.cvs /cvsroot 更改cvsroot权限

4、初始化CVS仓库
需要在cvsroot用户下执行
#su - cvsroot
#cvs -d /cvsroot init 此处对应上面创建的cvsroot路径 

#注:对应后面/etc/xinetd.d/cvspserver文件的配置

5、修改环境变量             

编辑/etc/profile或者/home下相应用户的.profile文件
此处已修改/etc/profile为例:
#exit
退回到root用户,只有root用户才有权限修改/etc/profile

#vi /etc/profile 编辑/etc/profile文件
在末尾加上以下两句:

CVSROOT=/cvsroot
export CVSROOT

更新环境变量:
#source  /etc/profile
此时系统已经认识$CVSROOT这样的环境变量

6、启动cvs服务器:
在/etc/xinetd.d/目录下创建文件cvspserver,内容如下:
# default: on
# description: The cvs server sessions;

service cvspserver
{
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs  

#注,/usr/bin/cvs是cvs 命令文件的位置 。

#注, 删除了系统自带的cvs安装包, 

                                                                                             #注,则server=你的cvs安装目录/bin/cvs

server_args = -f --allow-root=/cvsroot pserver  

#注,对应第4步cvs -d /cvsroot init命令
only_from = 192.168.10.0/24           

#注,24是子网掩码的长度,对应255.255.255.0 
}

其中only_from是用来限制访问的,可以根据实际情况不要或者修改。
修改该文件权限:
# chmod 644 cvspserver
然后重新启动xinetd:
# /etc/rc.d/init.d/xinetd restart
然后察看cvs服务器是否已经运行:
# netstat -lnp|grep 2401
tcp 0 0 0.0.0.0:2401 0.0.0.0:* LISTEN xxxxxx/xinetd
则说明cvs服务器已经运行。

7、建立cvs用户

为了CVS系统的安全,我们要修改/cvsroot/CVSROOT/config文件,将"#SystemAuth =no"的前而的注释号#去掉,即改为“SystemAuth =no”,然后给开发者们逐一建立账号,新建的不要分配用户目录,因为它将作为一个虚拟用户帐号来使用,具体命令如:
  [root@terry root]# chmod -R ug+rwx /cvsroot
  [root@terry root]# chmod 644 /cvsroot/CVSROOT/config
  [root@terry root]# useradd -g cvs -M gaoshang
  [root@terry root]# passwd gaoshang

上面的命令就创建了一个并没有Home目录的用户gaoshang,接着将系统的shadow文件复制到CVSROOT, 并重命名为passwd:

  [root@terry root]# cp /etc/shadow /cvsroot/CVSROOT/passwd
  [root@terry root]# chmod 0644 /cvsroot/CVSROOT/passwd

  然后修改passwd文件,将除刚才设定的可使用CVS的用户cvsroot及gaoshang之外的所有行删除,然后去掉每行第二个冒号以后的所有内容,并添上字符串cvsroot, 改为如下格式:

  [root@test11 CVSROOT]# more passwd
    cvsroot:$h3ntACe9$cM2SADto6B9P5h5Wrbgyi.:cvsroot
    gaoshang:ttSJv9AK.zzZhhHLEQZnZPgEe8f1:cvsroot

  然后,删除掉刚刚在系统中添加的那个用户gaoshang:

[root@terry root]# userdel -f gaoshang

(这里主要是使用系统在创建用户时,为用户密码生成的的密文)

好了,至此,CVS服务器端已配置完成。这时你的CVS用户就只能用passwd中规定的用户来登陆你的CVS服务器了

8 .为用户分配权限

  在/cvsroot/CVSROOT/下 ,加入两个文件 readers ,  writers

  将只能读权限的用户加入 readers 文件,

  将具有写权限的用户加入writers 文件。

  如:# vi writers

   gaoshang

 

9、linux客户端登录测试  (或见 window cvs客户端 wincvs 1.3的使用说明)

假定cvs服务器在192.168.10.11上,系统上有用户cvsroot和gaoshang。登陆另一台linxu机器,执行下列命令可以完成测试:

[root@test2 test]# export CVSROOT=:pserver:[email protected]:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:[email protected]:2401/cvsroot
CVS password:                                       

 #注:输入密码,没有出错提示表示登陆成功。
[root@test2 test]#
[root@test2test]# export CVSROOT=:pserver:[email protected]:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:[email protected]:2401/cvsroot
CVS password:                                      

#注:输入密码,没有出错提示表示登陆成功。
[root@test2 test]#                          


配置中碰到的问题
1、cvsroot用户不能登录
[root@test2 test]# export CVSROOT=:pserver:[email protected]:2401/cvsroot
[root@test2 test]# cvs login 
Logging in to :pserver:[email protected]:2401/cvsroot
CVS password:
no such user cvsroot in CVSROOT/passwd

解决办法,查看发现原因是/cvsroot/CVSROOT/passwd文件中没有包含cvsroot用户

2、只有cvsroot用户可以登陆,别的用户都不能登录
查看原因发现是 /etc/xinetd.d/cvspserver文件的server_args = -f --allow-root=/cvsroot pserver目录参数不对,因为我们此次配置的cvs工作目录是/cvsroot,而不是/home/cvsroot,所以将该参数为server_args = -f --allow-root=/cvsroot pserver,所有用户均可正常登录

至此,已经实现了CVS控制。
相关阅读 更多 +
排行榜 更多 +
拉力竞速2

拉力竞速2

体育竞技 下载
文字乱舞水浒

文字乱舞水浒

角色扮演 下载
蓝图公考

蓝图公考

学习教育 下载