当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > 为编程开发准备一台友好的CVS服务器

Linux服务器
RedHatLinux网络服务器构架实务(七)
RedHatLinux网络服务器构架实务(八)
RedHatLinux网络服务器构架实务(九)
在LINUX下使用Squid代理服务器
构建没有NT服务器的NT域
用Samba实现文件服务器功能
Debian服务器设置入门系列教程
RedHat8.0服务器配置指南--Webmail的实现
代理服务器Squid使用详解
为编程开发准备一台友好的CVS服务器
Linux的FTP服务器设置篇
在Linux代理服务器上设置防火墙
在Linux上用Qpopper建立POP3服务器
用Linux引导CD排除服务器故障
在Linux上如何重新进行Domino服务器的配置
TurbolinuxforiSeries服务器软/硬件需求
Linux服务器中架设AntiVir指南
基于Linux的Web服务器性能测试
Linux怎样做计费服务器
网络服务器基础

Linux服务器 中的 为编程开发准备一台友好的CVS服务器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 30 ::
收藏到网摘: n/a


真正做起来开发工作,才发现一台CVS服务器是必不可少的,即使是很少的开发人员的项目,
使用CVS也会起到很大的作用,具体什么作用,大家去体会:)

下面就把我架设CVS服务器的过程说说,和诸位前辈的不同之处在于我架设了一个WEB界面,
所以说是"友好的",通过WEB界面可以非常直观的浏览代码,查看图形化的修改记录,(提交
可以log到MySQL数据库--ThisfeatureisacloneoftheMozillaProjects
Bonsaidatabase.),目前SourceForge正在使用此界面的较低版本.

功能简介:
1:BaseCVSServer;
2:repositorybrowsing.
3:SQLcheckindatabase.
4:Colorizesourcecode.
5:Candisplayaclickable,graphicaloffilesinaCVSrepository.
6:generatetarballfromarepositoryonthefly.


OK,Letsgo!

1:初始化环境

#groupaddcvs

#mkdir/home2/cvsroot
#useradd-gcvs-Gcvs-d/home2/cvsrootcvsroot

#su-cvsroot
$chmod775.

OK!

2:启动CVSServer
诸位大虾已经有了很精辟的说明,拿来就是了!:P

#more/etc/services|grepcvspserver
cvspserver2401/tcp#CVSclient/serveroperations
cvspserver2401/udp#CVSclient/serveroperations

OK,RedHat系统不傻,可以写脚本了.

#vi/etc/xinetd.d/cvspserver
servicecvspserver
{
disable=no
flags=REUSE
socket_type=stream
wait=no
user=root
server=/usr/bin/cvs
server_args=-f--allow-root=/home2/cvsrootpserver
log_on_failure+=USERID
}

:wq

#ls/etc/xinetd.d/cvspserver
/etc/xinetd.d/cvspserver

脚本好了!

#su-cvsroot
$cvs-d/home2/cvsrootinit
#servicexinetdrestart

看看有没有?

#netstat-l|grepcvspserver
tcp00*:cvspserver*:*LISTEN

Great!


3:AddaWebInterface,viewcvs-0.9.2


URL:http://viewcvs.sourceforge.net/

要求比较个性,很多很多!列表:

a:
Python1.5orlater(http://www.python.org/)
Rh7.2竟然有两个python,1.5和2.1,更加有个性!
b:
RCS,RevisionControlSystem(http://www.cs.purdue.edu/homes/trinkle/RCS/)
Rh7.2自带.
c:
read-only,physicalaccesstoaCVSrepository(Seehttp://www.cvshome.org/formoreinformation)
Rh7.2自带.
d:
awebservercapableofrunningCGIprograms(forexample,Apacheathttp://httpd.apache.org/)
viewcvs-0.9.2文档竟然说apache是可选项:(
e:
GNU-difftoreplacebrokendiffimplementations(http://www.gnu.org/software/diffutils/diffutils.html)
Rh7.2自带.
f:MySQLtocreateandqueryacommitdatabase(http://www.mysql.com/)
Rh7.2自带.
g:(http://sourceforge.net/projects/mysql-python)(andPython1.5.2orlater)
去拉
h:EnscripttocolorizecodedisplayedfromtheCVSrepository(http://people.ssh.com/mtr/genscript/)
去拉
i:CvsGraphforagraphicalrepresentationoftheCVSrevisions(http://www.akhphd.au.dk/~bertho/cvsgraph/)
去拉

#tarzxvfcvsgraph-1.1.3.tar.gz
#cdcvsgraph-1.1.3
#./configure
#make
#cpcvsgraph/usr/bin
#mkdir/etc/cvsgraph
#cpcvsgraph.conf/etc/cvsgraph

#rpm-ivhegenix-mx-base-2.0.3-py2.1_1.i386.rpm
#rpm-ivhMySQL-python-0.9.1-1py2.i386.rpm


#tarzxvfviewcvs-0.9.2.tar.gz
#cdviewcvs-0.9.2
#./viewcvs-install
#cp/usr/local/viewcvs-0.9.2/cgi/viewcvs.cgi/var/www/cgi-bin

#cp/usr/local/cvsview-0.9.2/PyFontify*/usr/lib/python2.1/
#cp/usr/local/cvsview-0.9.2/py2html*/usr/lib/python2.1/
OK!

/**********MySQL****************/
建两个用户,cvsroot(password:cvsroot)使用root权限,cvsread(password:cvsread)
使用只读权限.

#/usr/local/cvsview-0.9.2/make-datebase
OK!

#vi/usr/local/viewcvs-0.9.2/viewcvs.conf
cvs_roots=
Development:/home2/cvsroot

rcs_path=/usr/bin/

[email protected]

[cvsdb]

host=localhost
database_name=ViewCVS
user=cvsroot
passwd=cvsroot
readonly_user=cvsread
readonly_passwd=cvsread
row_limit=1000

py2html_path=/usr/lib/python2.1

enscript_path=/usr/bin/

allow_tar=1

use_cvsgraph=1


********************************************************
***如果同时安装python-1.x和python-2x(比如RedHat7.2)
***以下千万注意(我们使用python-2.x)
********************************************************
cd/usr/local/viewcvs-0.9.2
loginfo-handler,standalone.py,cvsdbadmin
以及
cd/usr/local/viewcvs-0.9.2/cgi下的所有文件,

首行改为:#!/usr/bin/python2

#cp/usr/local/viewcvs-0.9.2/cgi/viewcvs.cgi/var/www/cgi-bin

http://127.0.0.1/cgi-bin/viewcvs.cgi/
OK了!


4:Adduser

#usermod-Gcvsusername#使用系统验证

OK,enjoyCVS!


5:微调

#mkdir/var/lock/cvs
#mkdir/var/lock/cvs/CVSROOT
#chmod-R775/var/lock/cvs
#chown-Rcvsroot.cvs/var/lock/cvs
#su-hleil
$exportCVSROOT=:pserver:[email protected]:/home2/cvsroot
$cvslogin
$cvscheckoutCVSROOT
$cdCVSROOT
$viloginfo
ALL(echo%{sVv};cat)|/usr/local/viewcvs-0.9.2/loginfo-handler#SQLcheckin
:wq

$viconfig
SystemAuth=yes#使用系统验证
LockDir=/var/lock/cvs#forsecurity
LogHistory=all
:wq

$cvscommit
#servicexinetdrestart


Great!终于好了!

呵呵,下面就开始你的代码之旅吧!