CVSWEB就是CVS的WEB界面,可以大大提高程序员定位修改的效率:
使用的样例可以看:http://www.freebsd.org/cgi/cvsweb.cgi
假定:apache安装在/usr/local/apache2
1、下载cvsweb(当前最新版3.0.6)
http://people.freebsd.org/~scop/cvsweb/cvsweb-3.0.6.tar.gz
2、解包
tar zxvf cvsweb-3.0.6.tar.gz
3、把配置文件cvsweb.conf复制到apache2的配置目录下
cd cvsweb-3.0.6
cp cvsweb.conf /usr/local/apache2/conf
修改cvsweb.conf,指定CVSrepositories路径。
vi /usr/local/apache2/conf/cvsweb.conf
查找"@CVSrepositories = " ,有如下字样:
@CVSrepositories = (
'local' => ['Local Repository', '/var/cvs'],
# 'freebsd' => ['FreeBSD', '/var/ncvs'],
# 'openbsd' => ['OpenBSD', '/var/ncvs'],
# 'netbsd' => ['NetBSD', '/var/ncvs'],
# 'ruby' => ['Ruby', '/var/anoncvs/ruby'],
将local的最后部分:'/var/cvs',更改为你的cvs仓库所在目录。
4、其它个性化设置
cvsweb.conf还有许多其它个性化设置,常见的有这些变量:
$logo 图标设置
$defaulttitle 标题设施
$address 管理员email地址设置
$long_intro 介绍文字
$short_instruction 说明文字
5、把cvsweb.cgi复制到apache的cgi-bin目录的cvsweb子目录下:
cp cvsweb.cgi /usr/local/apache2/cgi-bin/cvsweb/
更改cvsweb.cgi的$config变量值为你的cvsweb.conf所在路径。
vi /usr/local/apache2/cgi-bin/cvsweb.cgi
查找$config,找到有:
##### Start of Configuration Area ########
##### End of Configuration Area ########
字样部分,修改$config为:
$config = '/usr/local/apache2/conf/cvsweb.conf';
6、中文支持
vi /usr/local/apache2/cgi-bin/cvsweb.cgi
找到sub html_header($)函数。
在
7、复制所有的icons到apache的icons目录
cp icons/* /usr/local/apache2/icons
8、增加访问控制
增加cvsweb访问的web用户认证。
切换到/usr/lcal/apache2/conf目录,先生成passwd:
/usr/local/apache2/bin/htpasswd -c cvsweb.paaswd user
/usr/bin/htpasswd -c cvsweb.paaswd cvsroot
其中user为指定的用户名。
该命令在当前目录生成cvsweb.passwd文件,在下面配置中需指定该文件所在位置。
再修改httpd.conf配置文件,增加:
AuthName "CVS Authorization"
AuthType Basic
AuthUserFile /usr/local/apache2/conf/cvsweb.passwd
require valid-user
注:
1、如果不能访问http://localhost/cgi-bin/cvsweb/cvsweb.cgi,查看/usr/local/apache2/logs/error_log,查找错误原因。
2、安装cvsweb.cgi前,必须已安装File::Temp、IPC::Run、URI等3个perl模块。
3、安装cvsweb.cgi前,cvs必须成功安装。使用:
netstat -lnp | grep 2401 查看cvs是否已运行。
cvsweb配置
假如现在你已经成功配置了cvs那么为了便于管理简单那我们来配置cvsweb
废话少说当然你也要先下个正版的cvsweb-3.0.5.tar.gz
1. 首先看你apache配置文件httpd.conf其中把#AddHandler cgi-script .cgi
注释掉
2.解开这个gz文件,安装
tar xvzf [file]
cd [dir]
perl Makefile.PL
make
make test
make install
3.大家集注你的机器要支持modules_cgi(redhat linux 9.0这个是我的系统)把cvsweb.cgi放在/usr/local/apache/cgi-bin目录下
# cd /usr/local/apache/cgi-bin
# perl -wT cvsweb.cgi
看有没有错误信息,正常的话输出一堆html代码
4.[root@biologyone cgi-bin]# perl -wTc cvsweb.cgi
cvsweb.cgi syntax OK说明你现在.gz包安装成功
5.现在开始配置了
vi cvsweb.cgi,第213行
##### Start of Configuration Area ########
下面,仔细读一下,看看说了什么
可以,不用修改,看清楚了吧,默认的去找cvsweb的配置文件,在/usr/local/etc/cvsweb下面,你就在/usr/local/etc下建一个cvsweb目录,把cvsweb.conf放在这个目录下
6.vi cvsweb.conf 第59行
如果有两个仓库目录?都加在这个数组里,注意格式
' symbolic_name' => ['Name to display', '/path/to/cvsroot']
symbolic_name和Name to display都改一下吧,改成有意义的,符合你的项目的名字
看看下面的,举了几个例子
# 'freebsd' => ['FreeBSD', '/var/ncvs'],
# 'openbsd' => ['OpenBSD', '/var/ncvs'],
# 'netbsd' => ['NetBSD', '/var/ncvs'],
# 'ruby' => ['Ruby', '/var/anoncvs/ruby']
# Note that only local repositories are currently supported. Things like
# server omeone@xyz.com:/data/cvsroot won't work.
#
#
@CVSrepositories = (
'Bioinformatics database' => ['RBKB Repository', '/usr/local/cvsroot/RBKB'],
# 'freebsd' => ['FreeBSD', '/var/ncvs'],
# 'openbsd' => ['OpenBSD', '/var/ncvs'],
# 'netbsd' => ['NetBSD', '/var/ncvs'],
#
231行
my $iconsdir = '/icons';
# format: TEXT ICON-URL width height
%ICONS = (
back => [('[BACK]', "$iconsdir/back.gif", 20, 22)],
dir => [('[DIR]', "$iconsdir/dir.gif", 20, 22)],
file => [('[TXT]', "$iconsdir/text.gif", 20, 22)],
binfile => [('[BIN]', "$iconsdir/binary.gif", 20, 22)],
graph => [('[GRAPH]', "$iconsdir/minigraph.png", 16, 16)],
);
undef $iconsdir;可以改成这样ok了
my $iconsdir = '/cvsweb/icons';
还有下面的这行
$cssurl = '/cvsweb/css/cvsweb.css';
save退出
7.到/usr/local/apache/htdocs目录下建一个目录cvsweb,然后把刚才解开的cvsweb的目录里icons和css两个目录copy到这个目录里
重启apache
= == = = = = = = = = = =
CVSWEB就是CVS的WEB界面,可以大大提高程序员定位修改的效率:
使用的样例可以看:http://www.freebsd.org/cgi/cvsweb.cgi
CVSWEB的下载:CVSWEB从最初的版本已经演化出很多功能界面更丰富的版本,这个是个人感觉觉得安装设置比较方便的:
http://www.spaghetti-code.de/software/linux/cvsweb/
1 下载解包:
tar zxf cvsweb.tgz
2 把配置文件cvsweb.conf复制到apache的配置目录下
cp cvsweb.conf /path/to/apache/conf
转到/path/to/apache/conf下并修改cvsweb.conf:
修改CVSROOT路径设置:
%CVSROOT = (
'Development' => '/path/to/cvsroot/dev', #<==修改指向本地的CVSROOT
'test' => '/path/to/cvsroot/test', #<==修改指向本地的CVSROOT
);
如果有多个cvsroot,这定缺省的cvsroot
$cvstreedefault = 'test';
3 其它个性化设置
cvsweb.conf还有许多其它个性化设置,常见的有这些变量:
$logo 图标设置
$defaulttitle 标题设施
$address 管理员email地址设置
$long_intro 介绍文字
$short_instruction 说明文字
4 把文件cvsweb.cgi复制到apache的cgi目录
cp cvsweb.cgi /path/to/apache/cgi-bin
转到/path/to/apache/cgi-bin修改cvsweb.cgi
修改cvsweb.cgi让CGI找到配置文件:
$config = $ENV{'CVSWEB_CONFIG'} || '/path/to/apache/conf/cvsweb.conf';
5 中文支持
让cvsweb正确显示中文,找到sub html_header($)函数,
然后在和
6 复制所有的gif,png文件到apache的icons目录
7 增加访问控制
CVSWEB可不能随便开放给所有用户,因此需要使用WEB用户认证:
先生成 passwd:
/path/to/apache/bin/htpasswd -c cvsweb.passwd user
修改httpd.conf: 增加
AuthName "CVS Authorization"
AuthType Basic
AuthUserFile /path/to/cvsweb.passwd
require valid-user
0 评论:
发表评论