Centos7上搭建SVN服务器并实现自动同步至web目录
2017-08-04 15:30
465 查看
搭建svn环境并创建仓库
安装Subversionyum install -y subversion
检测是否安装成功
svnserve --version
创建版本库
#先建目录 mkdir /var/svn cd /var/svn #创建版本库 svnadmin create /var/svn/project #进入project目录会看到自动生成的版本库文件 cd project conf db format hooks locks README.txt
配置用户组及用户权限
进入版本库的conf目录,此目录有三个文件: svn服务综合配置文件(svnserve.conf)、 用户名口令文件(passwd)、权限配置文件(authz)。cd /var/svn/project/conf
设置账号密码
vim passwd
#在passwd文件里面添加以下文件以设置账号密码 [users] andrew=andrew joe=joe harry=harry
修改权限配置文件
vim authz
#在authz中添加以下内容 #创建一个组,用户是一定要在passwd中已配置的 [groups] developer=andrew,joe #安装组或者用户配置权限 [/] @developer=rw harry=rw
配置svnserve.conf,下面所有配置都需要顶格,前面不能留空格
#匿名用户访问权限:无 anon-access = none #普通用户访问权限:读、写 auth-access = write #设置密码文件,可用绝对路径或者相对路径 password-db = passwd #设置权限配置文件,路径设置同上 authz-db = authz #版本库所在位置 realm = /var/svn/project
启动svn服务器
启动svn服务# -d 表示以守护进程的方式启动服务 # -r 设置版本库的主目录 svnserve -d -r /var/svn
-r 参数的设置非常重要,如果project工程的路径为/var/svn/project,那么-r 参数设置成 /var/svn/project而不是上面那样是其父目录的话,客户端通过svn://localhost/project是会提示版本库不存在的
在客户端checkout
svn checkout svn://svn服务器域名或IP/project #然后根据提示输入svn账号密码即可
关闭svn服务器,删除版本库
直接通过kill命令进行关闭#查看svn服务详情 ps aux | grep svn kill -9 svn进程ID
如需删除版本库,直接删除其对应的文件夹即可
实现svn更新自动同步到web目录
在web目录(/data/src)中checkout版本库cd /data/src svn co svn://localhost/project #按照提示输入svn账号密码,此时会在src目录下新增project的文件夹,但是这样在/data/src目录下执行svn update是不行的,要进入project目录,然后再执行svn update才能进行更新
进入版本库的hooks文件夹下,建立post-commit(==只能是这个名称==)文件
cd /var/svn/project/hooks vim post-commit
#在该文件下添加以下代码 #!/bin/sh export LANG=en_US.utf8 SVN_PATH=/usr/bin/svn WEB_PATH=/data/src/project#记得带上project,因为在/data/src目录下执行svn update是不行的 $SVN_PATH update $WEB_PATH --username andrew --password andrew --no-auth-cache
修改post-commit用户为web目录用户
chown root:root post-commit
给post-commit用户赋执行权限
chmod 755 post-commit
设置完后直接执行脚本看是否没问题
./post-commit
相关文章推荐
- Centos7上搭建SVN服务器并实现自动同步至web目录
- 在Centos7上搭建SVN服务器并实现自动同步至web目录
- Centos7上搭建SVN服务器并实现自动同步至web目录
- Centos上搭建SVN服务器并实现自动同步至web目录
- centOs6.5 SVN 服务器搭建并实现提交自动同步到web服务器
- CentOS6.8 搭建SVN并用钩子自动实现同步到web目录
- Linux CentOS SVN 设置钩子hooks/post-commit来同步更新服务器web目录,实现代码自动部署
- Centos7上搭建SVN服务器并实现自动同步至web目录
- Linux下搭建SVN服务器及自动更新项目文件到web发布目录(wwwroot)的方法
- 搭建服务器上的GIT并实现自动同步到站点目录(www)
- 搭建服务器上的Git并实现自动同步到站点目录(www)
- liunx 搭建svn服务器并实现钩子自动更新到web项目
- centos搭建svn 服务器 并同步到web 目录(总结)
- centos搭建svn服务器并同步到web目录
- Windows平台下结合 tortoiseSVN 和 VisualSVN Server 搭建SVN服务器并实现 web 站点同步
- windows下svn的搭建以及实现自动更新web目录
- LinuxSvn服务器搭建之代码同步web目录
- 搭建服务器上的GIT并实现自动同步到站点目录(www)
- svn服务器的搭建以及利用svn hook与web根目录同步
- 搭建服务器上的GIT并实现自动同步到站点目录(www)