武英斌-博客

SVN部署及管理

发布时间:6年前热度: 816 ℃评论数:

搭建SVN服务端


>yum -y install subversion


>rpm -ql subversion


>mkdir /var/svn/svnrepos


>svnadmin create /var/svn/svnrepos/xxxx (xxxx为你预期的版本库名称,可自定义)


>cd /var/svn/svnrepos/xxxx


cd /var/svn/svnrepos/xxxx/conf


三个配置文件,分别都要修改

authz:负责账号权限的管理,控制账号是否读写权限


passwd:负责账号和密码的用户名单管理


svnserve.conf:svn服务器配置文件


1.svnserve.conf 文件里边取消部分注释(注释前不能有空格)


anon-access = read

auth-access = write


password-db = passwd

realm = My First Repository


2.passwd 文件里边需要新增用户


AAAA = AAAA(账号密码)

。。。

3.authz 文件里边需要给用户绑定权限

[\]

AAAA = rw

...

保存退出


开启相关svnserve 的防火墙端口


重启防护墙并启动svnserve服务 ->  svnserve -d -r /var/svn/svnrepos/


部署完成!!!



绑定web目录并自动更新(原理是 通过svn仓库里的hook钩子事件模板。在post-commit文件里设置一个客户端更新到指定web目录(svn检出目录)可完成自动更新)


具体操作:


1.指定web目录

>cd /www/wwwroot/

eg: svn co svn://localhost/XXXX 。。。。svn co 是 check out检出

>svn co svn://yourserverip/XXXX


>cd /var/svn/svnrepos/XXXX/hooks


>mv post-commit.tpml post-commit


>vi post-commit 


>末尾删除那些非注释数据,并新增一下内容


WEB_PATH=/www/wwwroot/XXXX

export LANG='en_US.utf8'

/usr/bin/svn update $WEB_PATH --username AAAA --password AAAA --no-auth-cache



保存退出。


>chmod 777 post-commit



Linux 将svn工作目录下所有文件传到仓库


>find .  | xargs svn add --force *.*


>svn ci -m "add demo*****"








部署,管理

手机扫码访问