CVS 使用手册[2]

[入库:2005年9月19日] [更新:2007年3月24日]

本文简介:

使用cvs本身的远程认证很麻烦,需要定义服务器和用户组,用户名,设置密码等,而且不安全,因此和系统本地帐号认证并通过SSH传输是比较好的办法,通过在客户机的/etc/profile里设置一下内容:
CVSROOT=:ext:$USER@test.server.address#port:/path/to/cvsroot CVS_RSH=ssh; export CVSROOT CVS_RSH
所有客户机所有本地用户都可以映射到CVS服务器相应同名帐号了。
如果CVS所在服务器的SSH端口不在缺省的22,或者和客户端与CVS服务器端SSH缺省端口不一致,有时候设置了:
:ext:$USER@test.server.address#port:/path/to/cvsroot 
仍然不行,比如有以下错误信息:
ssh: test.server.address#port: Name or service not known
cvs [checkout aborted]: end of file from server (consult above messages if any)

解决的方法是做一个脚本指定端口转向(不能使用alias,会出找不到文件错误):
创建一个/usr/bin/ssh_cvs文件:
#!/usr/bin/sh
/path/to/ssh -p 34567 "$@"
然后:chmod +x /usr/bin/ssh_cvs
并CVS_RSH=ssh_cvs; export CVS_RSH

注意:port是指相应服务器SSH的端口,不是cvs pserver的端口

5  CVSWEB:提高程序员比较文件修改效率
================================
CVSWEB就是CVS的WEB界面,可以大大提高程序员定位修改的效率:
使用的样例可以看:http://www.freebsd.org/cgi/cvsweb.cgi

CVSWEB的下载:CVSWEB从最初的版本已经演化出很多功能界面更丰富的版本,这个是个人感觉觉得安装设置比较方便的:
http://www.spaghetti-code.de/software/linux/cvsweb/
下载解包:
tar zxf cvsweb.tgz
把配置文件cvsweb.conf放到安全的地方(比如和apache的配置放在同一个目录下),
修改:cvsweb.cgi让CGI找到配置文件:
$config = $ENV{'CVSWEB_CONFIG'} || '/path/to/apache/conf/cvsweb.conf';

转到/path/to/apache/conf下并修改cvsweb.conf:

修改CVSROOT路径设置:
%CVSROOT = (
'Development' => '/path/to/cvsroot', #<==修改指向本地的CVSROOT
); 
缺省不显示已经删除的文档:
"hideattic" => "1",#<==缺省不显示已经删除的文档 
在配置文件cvsweb.conf中还可以定制页头的描述信息,你可以修改$long_intro成你需要的文字 
CVSWEB可不能随便开放给所有用户,因此需要使用WEB用户认证:
先生成 passwd:
/path/to/apache/bin/htpasswd -c cvsweb.passwd user

修改httpd.conf: 增加
<Directory "/path/to/apache/cgi-bin/cvsweb/">
AuthName "CVS Authorization"
AuthType Basic
AuthUserFile /path/to/cvsweb.passwd
require valid-user
</Directory>

CVS TAGS: who? when?
====================
将$Id$ 加在程序文件开头的注释里是一个很好的习惯,cvs能够自动解释更新其中的内容成:file_name version time user_name 的格式,比如:cvs_card.txt,v 1.1 2002/04/05 04:24:12 chedong Exp,可以这些信息了解文件的最后修改人和修改时间


CVS HOME: http://www.cvshome.org
CVS FAQ: http://www.loria.fr/~molli/cvs-index.html
http://directory.google.com/Top/Computers/Software/Configuration_Management/Tools/Concurrent_Versions_System/
http://cvsbook.red-bean.com/
CVS 命令的卡片: http://www.refcards.com/about/cvs.html

 默默 回复于:2003-02-09 21:47:07
支持

 iricyan 回复于:2003-02-10 01:13:35
cvs是什么????

 默默 回复于:2003-02-10 08:15:11
人家给你了网址,自己去看啊

 lanbird 回复于:2003-02-10 10:51:57
版本控制系统 ,希望CVS能服务你的软件开发,保证软件质量

 kinux 回复于:2003-02-10 19:40:56
[quote:c9be84e828="lanbird"] aborted]: end of file from server (consult above messages if any)

解决的方法是做一个脚本指定端口转向(不能使用alias,会出找不到文件错误):
创建一个/usr/bin/ssh_cvs文件:
#!/usr/bin/sh
/path/to..........[/quote:c9be84e828]

不错的文章..
不过,好像对*BSD 比較有用喔...  在Solaris 上沒有CVSUP的server...  怎么可以用CVS 更新呢???

 lanbird 回复于:2003-03-16 10:38:24
有没有用VSS的,可以比较使用CVS。

本文关键:CVS 使用手册
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top