安装 SVN
使用yum安装非常简单:
yum install subversion
配置
2.1. 创建仓库
我们这里在/var/svn/下建立一个名为svnrepos 的仓库
[root@localhost /]# mkdir /var/svn/svnrepos
创建一个项目名称为project1
[root@localhost /]# svnadmin create /var/svn/svnrepos/project1
chmod -R 777 /var/svn/svnrepos #很重要一定要给读写权限
[root@localhost /]# cd var/svn/svnrepos/project1/ #cd到该目录
我们这里特别关注一下conf文件夹,这个是存放配置文件的
authz passwd svnserve.conf
其中:
authz 是权限控制文件
passwd 是帐号密码文件
svnserve.conf 是SVN服务配置文件
接下来我们依次修改这3个文件。
2.2. 配置authz
[root@localhost conf]# vi authz
[root@localhost conf]#
2.3. 配置
[root@localhost conf]# vi passwd
2.4. 配置svnserve.conf
[root@localhost conf]# vi svnserve.conf
realm = My First Repository #这个地方可以选择改 改成 svn仓库的目录
realm = /var/svn/svnrepos #
关闭所有svn进程
[root@localhost conf]# killall svnserve
重启开启
[root@localhost conf]# svnserve -d -r /var/svn/svnrepos
启动SVN根目录 记住是根目录 不是你项目的目录
接着我们使用 svn连接 自行去下载 乌龟svn
单击确定 输入账号密码 也就是前面我们创建的三个账号 挑一个登录 就好了
效果如下:
3.1
现在来介绍一下 hook的作用
简单来说我们希望开发过程中
开发人员本地提交的代码 到我们的svn版本库后
我们的线上服务器项目根目录
希望能够自动拉取
大大节省开发效率
当然hook还有更方便的功能
比如在git上搭建svn 等等。。。
自己可以去尝试看看hook目录下的文件 这里不做解释
3.2
我们返回到项目
[root@localhost project1]# cd hooks/
创建并编辑
[root@localhost hooks]# vi post-commit
复制以下代码
#!/bin/sh
export LC_CTYPE="zh_CN.UTF-8"
SVN=/usr/bin/svn #svn的安装路径
WEB_PATH=/www/wwwroot/swoole/project/project1 #要强制更新的目录
SVN_USER=admin #svn账户
SVN_PASS=admin #svn密码
$SVN update $WEB_PATH --username $SVN_USER --password $SVN_PASS #执行更新
保存退出
3.3
接着我们到项目 需要自动拉取的目录
记住这里就是我们在配置 post-commit文件 里的强制更新的目录
chmod -R 777 /www/wwwroot/swoole/project/project1 #很重要一定要给读写权限 给你要提交线上项目的路径
[root@localhost hooks]# cd /www/wwwroot/swoole/project/project1
[root@localhost project1]# svn checkout svn://192.168.59.100/project1 ./ --username admin
回车 会让你输入密码 输入 admin 这里不截图
3.4
[root@localhost project1]# killall svnserve 关闭svn进程
[root@localhost project1]# svnserve -d -r /var/svn/svnrepos 然后在开启
3.5
接着我们来看看本地提交代码 线上能不能自动拉取
3.6我们到项目目录查看
ok 大功告成 这是我写的第一篇博客 写的不好还请大家见谅