1.安装subversion
yum -y install subversion
2.创建svn的版本库
mkdir -p /svn/www
svnadmin create /svn/www
3.配置svn版本库
vim /svn/www/conf/svnserver.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = /var/svn/repos/conf/authz
realm = /svn/www 库所在的位置
vim /svn/www/conf/passwd #配置用户账户密码
user = passwd
vim /svn/www/conf/authz #配置用户权限
user = rw
4.启动svn
svnserver -d -r /svn/www
本地SVN与远端web路径同步
svn:192.168.1.1
web:192.168.1.2
1.首先在web端手动使用SVN同步一下内容,看是否能同步过来
svn co svn://192.168.1.99/system_online --username pk --password pengkai
2.更改目录权限
chmod nginx.nginx /usr/share/nginx/html
3.到SVN服务器修改勾子文件,然SVN有更改时自动同步到web服务器
cp /svn/www/hooks/post-commit.tmpl /svn/www/hooks/post-commit
vim /svn/www/hooks/post-commit
#!/bin/sh
EPOS="$1"
REV="$2"
SVN_PATH=/usr/bin/svn
SSH_PATH=/usr/bin/ssh
LOG_PATH=/tmp/svn.log
echo `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATH
echo `whoami`,$REPOS,$REV >> $LOG_PATH
$SSH_PATH root@192.168.1.59 'svn update /usr/share/nginx/html/system_online/ --username pk --password pengkai'
$SSH_PATH root@192.168.1.59 'chown -R nginx.nginx /usr/share/nginx/html/system_online'
wq!
7.给这个文件添加执行权限
chmod 755 /svn/www/hooks/post-commit
8执行一下这个脚本(1.保存需要的密码 2.看脚本是否能执行)
/bin/bash post-commit
查看/tmp/svn.log,查看是否执行成功