Linux 安装svn 、设置钩子,更新项目同步到svn
检查已安装版本
#检查是否安装了低版本的SVN
1.1 rpm -qa subversion
#卸载旧版本SVN
检查已安装版本#检查是否安装了低版本的SVN
#卸载旧版本SVN
一.安装SVN
|
一.安装SVN
1 |
|
代码库创建
SVN软件安装完成后还需要建立SVN库
1 2 |
|
执行上面的命令后,自动建立svnrepos
库,查看/www/svnrepos
/test 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。
配置代码库
进入上面生成的文件夹conf下,进行配置
1 |
|
用户密码passwd配置
1 2 |
|
修改passwd为以下内容:
1 2 3 4 |
|
权限控制authz配置
1 |
|
目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容:
1 2 3 |
|
服务svnserve.conf配置
1 |
|
1、将前面的#去掉
启动SVN
1 |
|
查看SVN进程
1 2 |
|
检测SVN 端口
1 2 |
|
停止重启SVN
1 2 |
|
测试 (阿里云服务器 ESC 要设置安全组 3690)
SVN服务已经启动,使用客户端测试连接。
客户端连接地址:svn://ip/test
用户名/密码: cqh/123456
测试创建文件夹等操作。
二.设置钩子自动更新
实现SVN与WEB同步,可以CO一个出来,也可以直接用自动更新web目录的方法,我们要在svn版本库中配置钩子来实现,就是创建一个post-commit的配置文件,对其进行简单的配置,简简单单的四步就可以实现Linux下SVN自动更新web目录配置。
第一步:建立你的web程序目录
1 |
|
进入你建立的web程序目录(svn checkout可以简写为co)
1 2 |
|
第二步:在项目库的 hooks/ 目录下新建 post-commit 文件 【钩子脚本】
添加脚本内容如下
1 2 3 4 5 |
#!/bin/sh export LANG=en_US.UTF-8 DIR= / var /www/html/test #要更新的目录svn update $DIR --username '账号' --password '密码' --no-auth-cache |
第三步:让post-commit有执行的权限
1 |
|