CentOS Linux搭建SVN Server配置详解 联系客服

发布时间 : 星期一 文章CentOS Linux搭建SVN Server配置详解更新完毕开始阅读f1ebbe140c22590103029dc7

1/25/2016内容如下:

#!/bin/shREPOS=\REV=\

(总结)CentOS?Linux搭建SVN?Server配置详解

/usr/bin/svnnotify?–repos-path?“$1″?–revision?“$2″?–to?caodaijun@pica.com?–from?caodaijun@feinno.com?–handler

“HTML::ColorDiff”??–with-diff?–smtp?localhost?–smtp-user?root?–smtp-pass?5201314318?-c?“UTF-8″?-g?zh_CN?-o?raw?–svnlook/usr/bin/svnlook?–subject-prefix?‘[SVN?Update]‘

(to参数代表接收邮件的地址,可以有多个,当你有多个老大的时候,这就很重要了,:)。from参数是虚拟的,代表你的发送地址,一般情况下,这个参数?不重要,但如果接收者的邮件服务器有反垃圾邮件的功能,需要判定源地址的话,这个参数是否合法就显得很重要了)再给该脚本添加可执行权限#?chmod?+x?post-commit

7,再次提交时,就会给指定邮件地址发信了。如下图所示:

五,其它常用配置1,强制写log脚本

配置pre-commit文件,要求用户每次更新文件都必须写log.#?cd?/home/svn/project/hooks/#?vim?pre-commit文件内容如下:

#!/bin/shREPOS=\TXN=\

SVNLOOK=/usr/bin/svnlook

LOGMSG=`$SVNLOOK log -t \if [ \then

echo -e \exit 1fi

配置完成后,给本件加上可执行权限。再提交代码时,就必须按要求写注释了,:)

2,可修改log脚本

配置pre-revprop-change文件,此文件在show?log中修改log时会运行,得到修改的权限,否则会报错:DAV?request?failed;?it’s?possible?that?therepository’s?pre-revprop-change?hook?either?failed?or?is?non-existent.?At?least?one?property?change?failed;?repository?is?unchanged#?cd?/home/svn/project/hooks/#?vim?pre-revprop-change文件内容如下:

REPOS=\REV=\USER=\PROPNAME=\

if [\exit 1

http://www.ha97.com/4467.html5/14

1/25/2016

(总结)CentOS?Linux搭建SVN?Server配置详解

exit 1

配置完后加可执行权限升效。

六,备份管理

svn服务器的定期备份是很重要的,最简单的方式是定时备份仓库目录。1,新建备份目录

#?mkdir?/opt/project_backup2,编写备份脚本#?cd?/home/svn/

#?vim?project_backup.sh内容如下:

#!/bin/bash

#write by huabo, 2009-11-20

cd?/home/svn

now=`/bin/date?+%Y%m%d`

/bin/tar?czvf?“project_backup_$now.tar.gz”?project/?&&?rm?-rf?/opt/project_backup/*?&&?/bin/mv?project_backup_*.tar.gz/opt/project_backup/if?[?$??==?0?]then

result=”OK!!”else

result=”False!!”fi

#send?mail?to?administrator

/bin/mail?caodaijun@pica.com?-s?“project_backup_$now”?<

给该脚本添加可执行权限。

3,设定每天定时执行该脚本.#?crontab?-e输入如下内容:

0?23?*?*?*?/home/svn/project_backup.sh表示每天晚上23点运行此脚本。

经过以上三步操作,就可以自动备份SVN资料了,且不论备份是否成功,都会给用户发送邮件信息。七,用svnstat分析SVN数据.1,安装JAVA

svnstat是JAVA应用程序,需要先安装JAVA环境。

下载jre,URL:?http://javadl.sun.com/webapps/download/AutoDL?BundleId=39484安装:

#?chmod?+x?jre-6u20-linux-i586-rpm.bin#?./jre-6u20-linux-i586-rpm.bin

2,下载svnstat

#?wget?http://downloads.sourceforge.net/project/svnstat/svnstat/Release-1.0/SvnStat-1.0.zip?use_mirror=jaist#?unzip?SvnStat-1.0.zip3,更新代码#?pwd/root

#?svn?co?svn://192.168.60.10/projectA????project/testA????project/server

A????project/server/main.cA????project/client

Checked?out?revision?5.

4,生成svnstat数据

#?svn?log?project?-v?–xml?–non-interactive?>?project.log#?cd?SvnStat-1.0

#?java?-classpath?SvnStat-all.jar?de.agentlab.svnstat.SvnStat?-jar?SvnStat-all.jar?-r?/root/project.log?-d?/var/www/html/5,用浏览器登录即可看到许多统计出来的图表。大致如下图所示:

http://www.ha97.com/4467.html6/14

1/25/2016(总结)CentOS?Linux搭建SVN?Server配置详解

八,用statsvn分析SVN数据1,下载statsvn

#?wget?http://downloads.sourceforge.net/project/statsvn/statsvn/0.7.0/statsvn-0.7.0.zip?use_mirror=jaist#?unzip?statsvn-0.7.0.zip#?cd?statsvn-0.7.0

2,生成statsvn数据

#?mkdir?/var/www/html/statsvn

#?java?-jar?statsvn.jar?-verbose?-output-dir?/var/www/html/statsvn/?/root/project.log?/root/project3,用浏览器测测试效果如下图:

九,配置codestriker.

1.安装codestriker依赖的perl包.

#?perl?-MCPAN?-e?‘install?“Template”‘

http://www.ha97.com/4467.html7/14

1/25/2016(总结)CentOS?Linux搭建SVN?Server配置详解

2.下载codestriker

#?wget?http://downloads.sourceforge.net/project/codestriker/codestriker/1.9.10/codestriker-1.9.10.tar.gz?use_mirror=jaist&ts=1279246587#?mkdir?/var/www/codestriker#?cd?/var/www/codestriker

#?tar?xvf?/path/codestriker-1.9.10.tar.gz

#?chown?-R?apache.apache?codestriker-1.9.10

3.配置数据库

#?service?mysqld?restart#?mysql?-uroot?mysql执行:

CREATE?DATABASE?codestrikerdb?CHARACTER?SET?utf8;

GRANT?SELECT,INSERT,UPDATE,DELETE,INDEX,ALTER,CREATE,DROP,REFERENCES?ON?codestrikerdb.*?TO?codestriker@localhostIDENTIFIED?BY?‘cspasswd’;FLUSH?PRIVILEGES;quit

4.配置codestriker

#?cd?codestriker-1.9.10/#?vim?codestriker.conf

注意以下几点(详细可查看codestriker的安装文档)a.数据库的用户名密码要配对

b.svn的数据仓库要配对,我的如下:@valid_repositories?=(

‘svn:file:///home/svn/project’,)

5.执行codestriker的安装脚本#?cd?bin/#?./install.pl

6.配置http支持

#?vim?/etc/httpd/conf/httpd.conf在最后面加上如下内容:

Alias?/codestriker/??/var/www/codestriker/codestriker-1.9.10/cgi-bin/Alias?/codestrikerhtml/??/var/www/codestriker/codestriker-1.9.10/html/SetHandler?perl-script

PerlHandler?ModPerl::RegistryOptions?+ExecCGI

AllowOverride?NoneAllow?from?all

7.重启Web服务

# service httpd restart

8.在浏览器中输入http://192.168.60.10/codestriker/codestriker.pl即可访问,如下图:

http://www.ha97.com/4467.html8/14