一、svn及配置环境安装
yum -y install subversion httpd php mysql-server mod_dav_svn php-mysql php-pear php-mbstring mod_dav_svn
二、svn/apache集成
1.创建subversion仓库:
#mkdir –p /svn
#svnadmin create /svn
#chown -R apache:apache /svn
2.apache配置:
添加如下内容:vi /etc/httpd/conf/httpd.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
Ps:(yum安装默认已加入以上模块)
3.加入svn配置:
vi /etc/httpd/conf.d/svn.conf
<Location /svn/>
DAV svn
SVNListParentPath on #显示仓库根目录列表
SVNParentPath /svn #仓库根目录
AuthType Basic
AuthName "ZGSM SVN"
AuthUserFile /svn /passwdfile
AuthzSVNAccessFile / svn/accessfile
Require valid-user
</Location>
4.创建密码文件及访问文件
#touch /svn/passwdfile
#touch / svn/accessfile
#chown apache:apache passwdfile accessfile
htpasswd -m /svn/passwdfile(/svn /svn.user) username#添加账号
5.启动apache并验证subversion:
三、subversion可视化管理工具:
Svnadmin:
参考链接:http://tanghenxin.lofter.com/post/1cc667b3_5ac50dc
四、subversion全量拷贝:
#!/bin/bash
##配置库根目录
SVN_REPOROOT=/svn
##备份文件存放路径
date=$(date '+%Y-%m-%d')
BACK_DIR=/opt/bak
RAR_STORE=/opt/bak/$date
if [ ! -d "$RAR_STORE" ];then
mkdir -p $RAR_STORE
fi
##读取项目库列表
cd $SVN_REPOROOT
for name in $(ls)
do
##开始做全量备份
/usr/bin/svnadmin hotcopy $SVN_REPOROOT/$name $RAR_STORE/$name
done
cd $BACK_DIR
tar zcvf svn.$date.tgz $date && rm -rf $date
find /opt/bak/ -mtime +2 |xargs rm -rf