Centos6.5 搭建 SVN 服务器 及 钩子同步更新网站代码


一、 搭建SVN服务器

1、 Yum 安装 svn

yum install subversion -y 

2、 创建测试版本库

# 创建项目存放目录
mkdir /svn/kfc

# 使用 svnadmin 命令创建项目
svnadmin create /svn/kfc

# 项目创建成功
[root@localhost /]# ls /svn/kfc
conf  db  format  hooks  locks  README.txt

3、 配置开发用户组

  • 这里以添加用户admin 为例

[root@localhost kfd_en]# vim /svn/kfc/conf/authz 

# 添加 开发用户组coder
[groups]
coder= admin

# 添加coder组读写权限
[/]
@coder = rw

二、 配置hook同步更新

1、 创建网站根目录

  • 必须切换为 nginx 运行用户
  • 以下 nginx 运行用户为 www 为例
# 切换为 www 用户
su - www

# 创建网站代码存放目录
mkdir /data/web/

2、 检出版本库

# 检出版本库到网站根目录
svn checkout svn://localhost:/kfc

# 检出成功
[root@localhost /]# ls /data/web/kfc
kfc

3、 建立同步脚本

  • hooks(钩子)文件说明:
    • start-commit
      • 提交前触发事务
    • pre-commit
      • 提交完成前触发事务
    • post-commit
      • 提交完成时触发事务
    • pre-revprop-change
      • 版本属性修改前触发事务
    • post-revprop-change
      • 版本属性修改后触发事务
# 复制post-coimmit文件
cd /svn/kfc/hooks/
cp post-commit.tmpl post-commit

# 添加执行权限
chmod 755 post-commit

# 添加 同步命令 
[root@localhost hook]# vim post-commit

#!/bin/bash
export LANG=en_US.UTF-8
/usr/bin/svn update --force /data/web/kfc

三、 启动SVN 及 测试

1、 启动svn服务

  • 以下配置都是在原文件基础上修改
su - www -c 'svnserve -d -r /svn/'

2、 测试同步

  • 本地检出版本库 地址 svn://x.x.x.x:/kfc
  • 添加文件,提交,查看同步情况

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值