当前位置: 首页 > 学习 > 电脑学习 > 操作系统 > MacOSX > 技巧教程 > 正文

CVS在MAC OSX中的安装和使用

http://www.zk168.com.cn  招考学习网 2006-2-28 21:48:19
-----------------------------------------------------------[交流]-[打印]-[发送]-[收藏]--

一、编译和安装CVS

在MAC OSX中,如果安装了MAC OSX Developer Tools的话,CVS已经缺省的安装了。
如果想使用最新的CVS的话,我们可以通过 http://www.cvshome.org/ 下载到最新
版本的CVS源代码。假设CVS源码包为cvs.tar.gz,我们可以使用下面的命令进行
编译和安装。

tar zxvf cvs.tar.gz
cd cvs
./configure --without-gssapi
make
sudo make install

二、配置CVS服务器

首先创建一个CVS仓库,在console窗口中间如入下命令

mkdir /usr/cvs
cvs -d /usr/cvs init

假设系统使用的是inetd的话,我们可以通过使用如下的命令来配置CVS服务器

假设CVS仓库的路径是/usr/cvs
cd /etc
sudo vi inetd.conf
在文件的末尾添加如下信息
cvspserver stream tcp nowait root /usr/bin/cvs cvs -f -t --allow-root=/usr/cvs pserver
然后通过 kill -HUP `cat /var/run/inetd.pid`来重起inetd服务。

如果系统使用的是xinetd的话,我们可以通过以下操作来配置CVS服务器

在 /etc/xinetd.d/目录中创建一个cvspserver文件,内容如下

service cvspserver
{
disable = no
protocol = tcp
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/usr/cvs pserver
passenv =
groups = yes
}
然后通过 kill -HUP `cat /var/run/xinetd.pid`来重起inetd服务。

三、CVS客户端账号设置

通过上面两个步骤,CVS服务器已经基本上配置完成,但是,现在还需要进行
一些设置才能让CVS真正在项目开发中起到作用。

共有两种CVS的用户和账号设置。
一种是在操作系统中建立一个CVS用户组,然后让添加的CVS用户属于CVS用户
组,这样CVS用户就可以对CVS仓库中的文件进行访问和修改了。
另外一种方法是在操作系统中的只设一个CVS用户,然后通过设置CVSROOT仓库
中的passwd文件来达到多个用户对CVS的访问。下面我将详细讲述这些方法。

方法一:
首先使用OS X Application/Utilities中的NetInfo工具添加一个cvsgroup组,
将需要使用CVS的用户名称添加到cvsgroup组中的users项中。
然后修改/usr/cvs的owner属性,可以使用如下命令
chown -R cvs.cvsgroup /usr/cvs
这条命令将分别设置CVS仓库的拥有用户为cvs和拥有组为cvsgroup,因此如果
用户属于cvsgroup的话,都可以多CVS仓库中的文件进行读写。
用户可以通过如下命令进行测试
cvs -d :pserver:cvs@127.0.01:/usr/cvs login

方法二:
cd /usr/cvs/CVSROOT
touch passwd
这个passwd文件将作为CVS的用户和密码配置文件。
passwd文件中的配置格式如下
cvsuser1:xxxx:cvs
cvsuser2:xxxx:cvs
其中cvsuser1,cvsuser2是CVS的用户,xxxx使用户密码,cvs是真正的系统中存
在的CVS用户,标示为xxxx的用户密码是使用cypto系统调用创建的用户密码。
可以使用下面的perl脚本生成。

vi pwdgen.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}\n";

chmod +x pwdgen.pl

在console窗口中运行pwdgen.pl,输入用户名,将输出的密码拷贝到passwd文件
中即可。

用户可以通过writer和reader文件控制cvs用户的读写权限。
在/usr/cvs/CVSROOT中,键入如下命令:

touch writer
touch reader

然后只需将需要控制权限的用户名增加到文件中即可,比如:
cat cvsuser1 >> writer
cat cvsuser1 >> reader
cat cvsuser2 >> reader

用户可以通过如下命令进行登陆测试

cvs -d :pserver:cvs@127.0.01:/usr/cvs login

四、CVSWeb设置

CVSWeb是一个基于Web的CVS前端工具,用户可以通过浏览器浏览CVS仓库中的代码和
进行比较。

CVSWeb得下载地址是 http://www.freebsd.org/projects/cvsweb.html#downloads 。
也可以通过如下地址下载 http://www.spaghetti-code.de/software/linux/cvsweb/ 。
可以通过如下命令配置CVSWeb:

cd /usr
chmod 775 cvs
cp cvsweb.cgi /Library/WebServer/CGI-Executables
cp cvsweb.conf /Library/WebServer/CGI-Executables

cd /Library/WebServer/CGI-Executables
vi cvsweb.cgi

修改如下项为
$config = $ENV{'CVSWEB_CONFIG'} || '/Library/WebServer/CGI-Executables/cvsweb.conf';

vi cvsweb.conf
修改 %CVSROOT = (
'Your Project" = '/usr/cvs'
)
修改$cvstreedefault = 'Your Project'

然后在系统预置的共享项中启动个人Web共享。
这样,就可以通过 http://localhost/cgi-bin/cvsweb.cgi 对CVS进行访问了。

五、CVS的使用
1.import一个项目
import的作用是将一个项目纳入CVS的代码管理中,假设用户有一个项目处于/project/test
中,我们可以
cd /project/test
cvs -d :pserver:cvsuser@localhost:/usr/cvs import -m "Import Project" test releae1 start
这样就将一个项目导入到了CVS仓库中。
2.checkout一个项目
checkout的作用是将源代码从服务器上取回
cvs -d :pserver:cvsuser@localhost:/usr/cvs checkout test
3.update一个项目
cvs -d :pserver:cvsuser@localhost:/usr/cvs update

-----------------------------------------------------------[交流]-[打印]-[发送]-[收藏]--
最新入库:
 
·国外生活必备的英文词汇
·实用生活英语句子 174句
·唬老外的常用赞誉之辞语
·日常生活中商店译名参考
·在美生存常用习语
·实用生活英语二十六句
·年轻人常用口头禅
·去银行会用到的十句话
·中国文化的艺术精神_语言教育
·论苏拭的现实主义词风_语言教育
相关内容:
 
·大众传媒·大众文化·文化危机——丹
·知美·好美·乐美—谈美育的三个境界
·English Language: American or British?_语言教育
·How to improve the ability of listening, speaking,
·AN ANALYSIS OF LANGUAG_语言教育
·Published by the Corco_语言教育
·Language and Culture_语言教育
·教育与education探源_语言教育
·开口ABC 之 挑选礼物_语言教育
·闻言察意说CET听力_语言教育
网友点评:
 
会员名称:
密码:匿名 ·注册·忘记密码?
评论内容:
(最多300个字符)
  查看评论
友情提醒:
 1.库中的资料大都来自互联网、网友上传、各类书籍,在录入的过程中难免会出现错误,恳请网
 友来信指正!
 2.如果网友在本库中未能找到所需要的材料,请登陆到我们的论坛《招考学习网》版块!
 3.考友想加入招考学习网的编辑部,请发信到XueXiWang#Gmail.com(#改为@)附带个人简历
 4.如需转载请注明出处及作者,谢谢合作!
 5.如果您有更好的建议或意见请EMAIL:XueXiWang#Gmail.com (#改为@)
 6.凡标题中有注有“[NO]”字样均不含答案且答案整理中.
 7.如本库中转载文章涉及版权等问题,请相关网站或作者在两周内发邮件通知(EMAIL:  XueXiWang#Gmail.com (#改为@))我们,我们接到通知后立即删除该文章及链接!
你问我答 更多>>