svn 部署和使用
来源:互联网 发布:历年总决赛mvp平均数据 编辑:程序博客网 时间:2024/05/18 03:38
此处不讨论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 #默认是只读readauth-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$ lltotal 8drwxr-xr-x 6 hjs root 4096 Jul 2 12:46 firstdrwxr-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/shREPOS="$1" #项目仓库的绝对地址REV="$2" #第n次提交中的nexport 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
- svn 部署和使用
- SVN介绍和安装部署
- 部署和搭建 svn 服务器
- CentOS安装SVN和部署
- SVN使用和SVN常用命令
- 新浪云SAE使用中连接ftp问题和SVN部署仓库路径
- SVN 管理软件安装、部署、使用详细介绍
- sae使用svn部署代码注意事项
- apache下 使用svn自动部署代码
- 使用svn部署代码到新浪sae
- SVN安装部署使用的经验分享
- Jenkins+svn项目自动打包和部署
- Jenkins+svn项目自动打包和部署
- svn部署
- 部署svn
- SVN部署
- SVN部署
- SVN 安装和使用
- Unity:CritterAI与Recast Navigation寻路
- Android 安全退出应用程序的方法总结
- VS2013下 .lib和.dll的生成与使用
- tcp与udp的区别
- 数据流中位数-LintCode
- svn 部署和使用
- datagird无法deleteRow
- 室内环境污染的表现
- 06. TCP 通信 ❀ 数据包分析工具 Wireshark
- 存储器
- 你睡得那么晚,一定是程序员吧
- CentOS7开启端口
- Livy:基于Apache Spark的REST服务
- PHP+ApacheHttpServer配置环境