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

Linux服务器
Linux上双网卡绑定方法(Suse9SP3)
Linux操作系统调优参数的意义
Linux下使用SSH客户端及其Sftp文件传送
教你恢复被误删除的Linux文件
SQL Server注入大全及防御
Linux无法解析域名的解决办法
Linux系统下安装和配置MyEclipse的方法
Ubuntu下VirtualBox 1.4.0设置文件共享
Windows与Linux系统共享StarDict字典文件
修改Linux下相关的登陆信息
Windows通过SecureCRT远程登录Linux主机
Linux操作系统如何修改SWAP交换区的大小
Linux操作系统下为Apache目录添加密码
Linux时间设置与同步(NTP)
Linux内核补丁AMD旁路转换缓冲(TLB)错误
Linux架设DHCP服务器的方法
Fedora 8下Apache配置与管理
Linux操作系统下用单网卡捆绑双IP的方法
Ubuntu Linux系统环境变量配置文件
SUSE Linux中将Tomcat作为Service运行

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 33 ::
收藏到网摘: 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!终于好了!

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