CentOS 7.0:搭建SVN服务器
1. 通过 yum install subversion来安装
2. 提示已经安装。查看svn版本
第二步: 创建svn版本库
第三步: 配置svn信息
2. 配置权限配置文件authz
3. 配置用户口令文件passwd
4. 配置 svn服务综合配置文件svnserve.conf(对realm 做了修改:realm = /home/svn/project)
第四步: 启用svn,连接svn以及关闭svn
1. 启用svn
svnserve -d -r /home/svn/project/
2. 连接svn
(1) 出现错误,认证失败
(2) 修改/root/.subversion/servers选项
(3) 安装openssl以及openssl-devel
(4)如果以上2步都操作还是提示认证失败,那只能无奈的用这个了:
(5)连接成功,以及导入文件成功
3. 关闭svn
通过ps -aux|grep svn 查看到的svn进程id来进行关闭
第四步、实现svn更新自动同步到web目录:
1.先在svn下面创建仓库test,并且把用户组,用户名都修改好(这步骤见第三部,SVN配置)
2.把web导入到svn 仓库中(SVN import web绝对路径 svn 路径)
到了第2步,本地是可以远程下载这个项目的,并且手动更新,但是我想做实时更新,所以接下来第3步
3.实现实时更新
a.先进入到svn 仓库中,我的路径是
b.新建 post-commit (钩子)
#!/bin/sh #设定环境变量,如果没有设定可能会出现update报错 #设定语言,根据系统语言设置,如果是GBK就设置为 LANG=zh_CN.GBK export LANG=en_US.utf8 SVN_PATH=/usr/bin/svn WEB_PATH=/home/wwwroot/default/test/ $SVN_PATH update $WEB_PATH --username 'zz' --password '123456' --no-auth-cache exit 0
c.改变post-commit 的权限(本地上传时报这个错误:post-commit hook failed (exit code 255) with no output,就是post-commit 没有权限.)
c.重启svn 好了 完成了