linux下通过yum安装svn及配置

1.环境
centos6.4

2.安装svn
yum -y install subversion

3.配置

建立版本库目录
mkdir /home/www/svndata

svnserve -d -r /home/www/svndata

4.建立版本库

创建一个新的Subversion项目
svnadmin create /home/www/svndata/zihexin

配置允许用户jiqing访问
cd /var/www/svndata/zihexin/conf

vi svnserve.conf
anon-access = none  
auth-access = write  
password-db =路径/ passwd  
authz-db = 路径/authz  
realm = My Test Repository #这是个提示信息 

注:修改的文件前面不能有空格,否则启动svn server出错

vi passwd
[users]
#<用户1> = <密码1>
#<用户2> = <密码2>

yeyu= 123456  
test1 = 123456  
test2 = 123456

vi authz  
[groups]  
admin = yeyu,test1  
user = test2  
[/]  
@admin = rw  
@user = r  
* = 

===============================================================

6.实现SVN与WEB同步,可以CO一个出来,也可以直接配在仓库中

1)设置WEB服务器根目录为/home/wwwroot

(例如将当前目录导入版本库myproject:
svn import  file:///home/www/svndata/myproject -m "导入文件"
)

2)checkout一份SVN

svn co svn://localhost/zihexin /home/wwwroot/zihexin

(例如将myproject库中的文件导出到当前目录:svn co file:///home/www/svndata/myproject .)

修改权限为WEB用户

chown -R apache:apache /var/www/webroot/njlrxx

3)建立同步脚本

cd /home/www/svndata/zihexin/hooks/

cp post-commit.tmpl post-commit

编辑post-commit,在文件最后添加以下内容

复制代码
REPOS="$1"
REV="$2"

BASEPATH=/var/www/webroot/njlrxx
WEBPATH="$BASEPATH/"
export LANG=zh_CN.UTF-8
svn update $WEBPATH --username jiqing --password 123456 --no-auth-cache
复制代码

 

增加脚本执行权限

chmod +x post-commit

最后操作是关闭服务然再打开服务:

svn服务的关闭:

killall svnserve

svn开启:

svnserve -d -r /var/www/svndata

 

===============================================================

SVN自动同步程序执行流程:
1、用户提交文件到SVN服务器,提交操作成功后触发post-commit脚本
2、在post-commit版本文件中使用php_script.php执行PHP脚本
3、在PHP脚本中通过exec系统调用更新服务器上的版本库工作副本
4、根据更新操作结果日志,对另一个SVN版本库进行对应的操作处理

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值