Centos下SVN安装以及同步到web目录

  • 一、安装

Yum –y install subversion

建立版本库目录

Mkdir –p /mnt/svn

建立svn

Svnadmin create /mnt/svn/delieato

启动svn:

Svnserve –d –r /mnt/svn

 

  • 二、配置库

针对每一个库,其conf目录下有三个配置文件(authzpasswdsvnserve.conf

1、  authz,设置用户组和用户权限

[group]

smsyun = ddl,shl //创建一个smsyun的组,并制定两个用户ddlshl

[/]   //订制目录下的权限 /代表目录下的所有资源

@smsyun=rw   //smsyun用户组权限为读写

*=r           //其他用户只有读权限

2、  passwd

[users]

Dd1=123  //用户名=密码

Dd2=123

3、  svnserve.conf,把以下四行前面的#去掉

# anon-access = read   //去掉#并将read改为none,不允许匿名用户访问
# auth-access = write    //通过验证的用户可以读写
# password-db = passwd //用户保存文件
# realm = smsyun      //仓库名称

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

4、  设开机自动启动

Vi /etc/rc.local

touch /var/lock/subsys/local下面添加一行

Svnserve –d –r /usr/local/svnRepo/first

  • 三、同步到web目录

1、设置web目录为 /var/yii

2Checkout一份到web目录

Svn co svn://localhost/smsyun /var/yii

3、建立同步脚本

/mnt/delieato/hooks目录下新建post-commit文件

在文件中添加:

#!/bin/sh

REPOS="$1"

REV="$2"

exportLANG=en_US.UTF-8

SVN=/usr/bin/svn

WEB=/var/yii

$SVN update $WEB --username dd1 --password 123--no-auth-cache

然后给post-commit脚本执行权限

Chmod +x post-commit

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

关闭:killall svnserve

开启:svnserve –d –r /mnt/delieato/svn


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。