【服务器】SVN环境部署进阶完整版

版权声明:版权:cometang--唐家世少所有 https://blog.csdn.net/qq_39005315/article/details/85047739

搭建SVN并用钩子自动实现同步到Web目录
一 安装

yum install subversion

二 检查是否安装成功

svn --version

三 创建仓库目录

mkdir –p /home/svnroot/test

四 创建项目

svnadmin create /home/svnroot/test

五 检查是否创建成功

cd /home/svnroot/testls    // 查看创建成功后生成的文件

六 进入conf目录配置该版本库的文件

authz 是权限控制文件
passwd 是帐号密码文件
svnserve.conf 是SVN服务配置文件

6.1 配置passwd,语法:用户名=密码
[users]

test1 = 123456
test2 = 123456

6.2 配置authz用户权限文件

[/]
test1 = rw
test2 = r

6.3 配置svnserve.conf文件,取消以下几个注释即可

anon-access = read  #匿名用户可读  
auth-access = write  #授权用户可写  
password-db = passwd  #使用哪个文件作为账号文件  
authz-db = authz  #使用哪个文件作为权限文件  
realm = /home/svnroot/test  #认证空间名,版本库所在目录

七 启动 SVN服务

svnserve -d -r /home/svnroot
svnserve -d -r /mnt/westos --listen-port 3691

注意:不是svnserve -d -r /home/svnroot/test

八 在本机安装TortoiseSVN

输入svn://你的ip地址/test

如果弹出输入账号密码的对话框,表示上述设置正确。

九 实现自动同步
假设web目录是 /home/www/test
在/home/svnroot/test/hooks下创建post-commit文件,文件设置可执行权限

cp post-commit.tmpl post-commit

chmod 755 post-commit

打开post-commit文件,加入以下内容

export LANG=zh_CN.UTF-8
svn co svn://你的ip地址/test /home/www/test
LOG_PATH=/tmp/svn_test.log
WEB=/home/www/test
REPOS="$1"
REV="$2"
svn update --username test1 --password 123456 $WEB --no-auth-cache >> $LOG_PATH

最后,回到shell

svn co svn://你的ip/test /home/www/test

猜你喜欢

转载自blog.csdn.net/qq_39005315/article/details/85047739
今日推荐