注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

0与1构筑世界,程序员创造时代

软件架构设计 Java编程

 
 
 

日志

 
 

SUSE Linux 10 - CVS配置  

2010-05-17 20:58:11|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
  文章声明

作者:傲风(aofeng)      编写时间:2010年05月17日

网址:http://aofengblog.blog.163.com

作者保留所有权利,转载请保留文章全部内容!



CVS是常用的并发版本控制系统,虽然现在有SVN来替代它,但现在许多的版本管理仍然使用它。我现在管理自己业余编写的代码就是用的CVS。以前是在Windows下用CVSNT进行管理 ,但在权限的管理方面存在问题,现在在Linux下用CVS,虽然参考了网上的一些资料,但配置过程有点碰碰磕磕。现在将我的配置过程记下来,方面以后再配置。

环境

SUSE Linux Enterprise Server 10 SP1
CVS-1.12.12-19.2

建立CVS用户组和用户

SuSE Linux 10 - CVS配置 - 傲风 - 宝剑锋从磨砺出,梅花香自苦寒来!前提:以root账号登陆。
1、建立cvs用户组:
suse10:~ # groupadd cvs

2、建立cvs组的cvsroot用户和所属的目录:
suse10:~ # useradd -g cvs -G cvs -d /cvs_root cvsroot

3、为cvsroot用户设置密码:
suse10:~ # passwd cvsroot

4、改变 /cvsroot/ 的目录属性:
suse10:~ # chmod -R 770 /cvs_root 

配置CVS服务

SuSE Linux 10 - CVS配置 - 傲风 - 宝剑锋从磨砺出,梅花香自苦寒来!前提:以root账号登陆。
1、配置CVS接受xinetd服务管理。
suse10:~ # cd /etc/xinetd.d/
suse10:/etc/xinetd.d # vi cvs
# CVS pserver (remote acces to your CVS repositories)
# Please read the section on security and passwords in the CVS manual,
# before you enable this.
# default: off

service cvspserver
{
disable = no
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/cvs_root/projects pserver
}
SuSE Linux 10 - CVS配置 - 傲风 - 宝剑锋从磨砺出,梅花香自苦寒来!注:上面的粗体部分是根据实际情况修改,disable=no是必须的,server_args后面的--allow-root的值根据实际情况配置,并可以配置多仓库。

2、配置CVS服务的监听参数。
suse10:/etc/xinetd.d # cd /etc
suse10:/etc # vi services
确保有以下两行配置:
cvspserver 2401/tcp # cvspserver
cvspserver 2401/udp # cvspserver

3、重启xinetd服务。
suse10:/etc # service xinetd restart
Shutting down xinetd: done
Starting INET services. (xinetd) done

4、检查CVS是否已经启动。
suse10:/etc # netstat -l | grep cvs
tcp 0 0 *:cvspserver *:* LISTEN
如果出现上述的结果,说明CVS已经成功启动。

初始化CVS仓库

SuSE Linux 10 - CVS配置 - 傲风 - 宝剑锋从磨砺出,梅花香自苦寒来!前提:以cvsroot账号登陆。
1、初始化CVS仓库
cvsroot@suse10:~>cvs -d /cvs_root/projects init
projects目录下会自动生成一个CVSROOT目录,里面是仓库的配置文件。

2、配置CVS用户
在CVSROOT目录下新建passwd文件,这个文件用于CVS对用户的鉴权。
cvsroot@suse10:~>vi passwd
aofeng:cxdqUSguX7U4U:cvsroot
passwd文件的格式如下:
<CVS用户名>:<CVS用户密码>:<让CVS用户拥有权限的系统用户名>

其中的密码字符串“cxdqUSguX7U4U”可以由附录中的passwdgen.pl脚本生成。

3、给用户设置写权限。
CVS另外还有两个文件:writers,readers。
writers文件中的用户说明该用户有写权限,readers中的用户说明该用户有读权限,如果一个用户同时存在于writers和readers中,则该用户只有读权限。
writers和readers的格式如下:
用户名1
用户名2

每行一个用户名。

用CVS客户端连接

这里用eclipse自带的CVS客户端连接CVS Server。
1、配置连接参数。
SuSE Linux 10 - CVS配置 - 傲风 - 宝剑锋从磨砺出,梅花香自苦寒来!
 

2、查看CVS仓库的内容。
SuSE Linux 10 - CVS配置 - 傲风 - 宝剑锋从磨砺出,梅花香自苦寒来!


附录:passwdgen.pl

1、编辑passwdgen.pl文件。
cvsroot@suse10:~> vi passwdgen.pl
#!/usr/bin/perl
srand (time());
my $randletter = "(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))";
my $salt = sprintf ("%c%c", eval $randletter, eval $randletter);
my $plaintext = shift;
my $crypttext = crypt ($plaintext, $salt);
print "${crypttext}";

#>chmod a+x /cvsroot/passwd.pl

2、赋予passwdgen.pl执行权限:
cvsroot@suse10:~> chmod +x ./passwdgen.pl 
假如要生成密码aofeng的密文 ,只要使用passwdgen.pl "aofeng"就行了。


<正文结束>
  评论这张
 
阅读(1594)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017