svn 部署和使用

此处不讨论svn和git的优劣,目的只有一个,使用svn搭建开发、测试、生产环境, 使用svn进行代码的管理和发布,并探索基于svn的工作流。

文章将会介绍一下内容:

  • 搭建开发、测试、生产环境
  • 一个简单的开发、测试、线上部署例子

1、 搭建开发、测试、生产环境

1.1、安装svn服务器

sudo yum install subversion

从镜像下载安装svn服务器端
中间会提示是否ok,输入y,确认
安装成功提示:…..complete!

1.2、创建项目源码仓库

cd /usr/local/
sudo mkdir svnRepo  #创建svn仓库目录
sudo chmod 777 -R svnRepo/ #修改仓库权限
svnadmin create /usr/local/svnRepo/first  #创建项目仓库目录,名字随便取
1.2.1、修改配置文件

每个svn项目仓库都有三个配置文件:conf/authz、conf/passwd conf/svnserve.conf

cd svnRepo/first/conf/

(1) svnserve.conf //配置版本库信息和用户文件和用户密码文件的路径、版本库路径

anon-access = none       #默认是只读read
auth-access = write      #认证后有写入权限
password-db = passwd     #帐号密码配置文件
authz-db = authz         #权限配置文件
realm = first            #生效范围 改成自己的项目版本库名

(2) passwd //创建或修改用户密码

[users] 

aa= 123456    //用户名 = 密码  
bb= 123456    //。。。 

(3) authz //文件,创建svn组和组用户的权限

[group]  
first = aa,bb      //创建一个first的组,并制定两个用户aa和bb

[/]                   //制定根目录下的权限 
@first = rw           //first组用户权限为读写  
# tom具有读写权限
#tom= rw

不要使用 *= r,不知为何,就是报错

1.3、启动项目版本库

项目的版本仓库准备好之后就可以启动了,这样svn客户端才可能连接仓库并进行相应的操作。

svn服务根目录
如下,当前svnRepo目录有两个svn项目仓库:

-bash-4.2$ pwd
/usr/local/svnRepo
-bash-4.2$ ll
total 8
drwxr-xr-x 6 hjs root 4096 Jul  2 12:46 first
drwxr-xr-x 6 hjs root 4096 Jul  2 14:27 second

以svnRepo作为服务根目录启动svn服务:

svnserve -d -r /usr/local/svnRepo/

svn客户端资源路径:

svn co svn://IP地址/first  #checkout first仓库
svn co svn://IP地址/second  #checkout second仓库

svn服务和http网页服务一样,因为上述svnserve -d -r /usr/local/svnRepo/以svnRepo作为服务器根目录,因此客户端访问资源的时候就是从svnRepo开始,比如checkout first项目代码就是svn co svn://IP地址/first

经常听到有的博客说什么单版本库启动、多版本库启动的,还说-r是区别,那是错误的,-d是以后台进程运行,-r是指定svn服务器的根目录!具体可以执行svnserve --help

1.3、编写post-comit脚本

#!/bin/sh


REPOS="$1"  #项目仓库的绝对地址
REV="$2"  #第n次提交中的n

export PATH="/usr/local/svn/bin:$PATH"  #由于代码是apache的进程用户www运行,所以需要设置环境变量 

export LANG=zh_CN.UTF-8 

#测试脚本
#echo ${1}" " ${2} 'hello woeld \n' >> /home/aa/test/post-commit.log

#脚本开始

2、一个简单的开发、测试、线上部署例子

参考资料:
http://www.cnblogs.com/mitang/p/4309762.html
http://www.open-open.com/lib/view/open1376871583553.html

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值