svn部署

#1 安装

yum install subversion -y

#2 查看版本

svnserve --version

#3 创建版本

mkdir /u02/svn -p

svnadmin create /u02/svn/fastweb

#4 配置权限、口令、服务配置文件

cd /u02/svn/fastweb/conf/

##4.1 配置权限

vi authz

[groups]
admin = yeqing
[/]
*=r
@admin=rw

##4.2 配置用户名口令

[users]
yeqing = 123456

##4.3 配置SVN配置文件

[general]

anon-access = none
auth-access = write

password-db = passwd

authz-db = authz

realm = fastweb

[sasl]

#5 重启svn服务

lsof -i :3690

pkill svn

svnserve -d -r /u02/svn

netstat -lntup|grep svn

#6 导入文件源

  svn import /server/scripts file:///u02/svn/fastweb -m 'test'

#7 客户端

svn://192.168.1.168/fastweb

账号:yeqing

密码: 123456

#8 加入自启动

echo 'svnserve -d -r /u02/svn' >> /etc/rc.local

#9 备份版本

svnadmin --help|grep dump

svnadmin dump /u02/svn/fastweb/ > /tmp/fastweb_$(date +%F).backup

#10 将备份版本导入新版本

svnadmin load /u02/svn/yeqing < /tmp/fastweb_$(date +%F).backup

#11 将版本中的数据更新到目录

mkdir /application/data/test -p

/usr/bin/svn checkout svn://192.168.1.168/fastweb /application/data/test (第一次)

/usr/bin/svn update /application/data/test/

#12 钩子(原理:每次commit,触发post-commit脚本)

cd /u02/svn/fastweb/hooks/

vi post-commit

#!/bin/bash

export.UTF-8

svn=/usr/bin/svn

svnRsync=/yeqing

rsync=/usr/bin/rsync

exclude=/data/rsyncLog/exclude.list

 

for svnDir in `svnlook dirs-changed/u02/svn/wmanhua/`

do

   ${svn}update ${svnRsync}  --username=yeqing--password=123456

done

if [ $? == 0 ]

then

  rsync -avz -e 'ssh -p22' /yeqing [email protected]:/data

fi

chmod 700 post-commit






本文出自 “技术�潘�” 博客,谢绝转载!

你可能感兴趣的:(SVN,部署)