您现在的位置是:首页 >技术交流 >CentOS上搭建SVN并自动同步至web目录网站首页技术交流
CentOS上搭建SVN并自动同步至web目录
简介svn使用post-commit实现自动部署,自动checkout.搭建svn都不是仅仅为了把代码存到仓库,而是同步部署到对应的项目。
一、搭建svn环境并创建仓库:
1、安装Subversion:
yum install svn
2、创建版本库:
//先建目录 cd /www mkdir wwwsvn cd wwwsvn //创建版本库 svnadmin create xiangmumingcheng
二、创建用户组及用户:
1、 进入版本库中的配置目录/www/wwwsvn/xiangmumingcheng/conf,此目录有三个文件: svn服务综合配置文件(svnserve.conf)、 用户名口令文件(passwd)、权限配置文件(authz)。
2、修改权限配置文件:vim authz
[/] * = rw
3、配置用户名命令文件:vim passwd
zhanghao = mima
4、配置SVN服务综合配置文件svnserve.conf
anon-access = none //匿名用户访问权限:无 auth-access = write //普通用户访问权限:读、写 password-db = passwd //密码文件 authz-db = authz //权限配置文件
5、启动svn服务:
svnserve -d -r /www/wwwsvn/
三、实现svn更新自动同步到web目录:
1、 进入版本库中的钩子目录/www/wwwsvn/xiangmumingcheng/hooks
cp post-commit.tmpl post-commit //复制post-commit.tmpl 改名为post-commit
2、写入以下内容
#!/bin/sh #用sh来解析这个脚本 export LANG=zh_CN.UTF-8 #编码格式 SVN=/usr/bin/svn #这里配置的是svn安装bin目录下的svn文件 WEB=/www/wwwroot/xiangmumingcheng #要更新的目录 $SVN update $WEB --username zhanghao --password mima
3、修改post-commit的可执行权限
chmod 755 post-commit
4、在服务器进入项目目录/www/wwwroot checkout 整个项目。
svn co svn://127.0.0.1/xiangmumingcheng
梦想加空间!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。