简进祥-SVN版本控制方案:多分支并行开发,多环境自动部署
2016-07-19 16:15
786 查看
两地同时开发一个产品,目前线上有3个环境:测试环境、预发布环境、生产环境。目前系统部署采用jenkins自动化部署工具
根据配置的svn路径
下载源码
maven打包
copy到tomcat的webapps目录
重启tomcat
采取的版本控制方案如下图,虽然图看起来这么多弯弯曲曲的线,其实还是实施起来很简单的
两个原则
一:基于分支提测,预发布和生产基于主干进行发布
二:每次上线后,一定要及时通知其他分支及时从trunk merge到branch
这种版本控制可以有细微变动:就是第四点,发布到线上后,发现存在bug,那么是从tag新建分支,修复后,可以直接从分支打包上生产。因为如果用jenkins自动部署工具,那么就需要保证取源码的svn路径不能发生改变。
如下图:
用jenkins部署的方案
jenkins 测试环境:配置了各个分支的svn 地址;预发布和生产环境配置为主干的svn地址。jenkins部署的大致流程为:根据配置的svn路径
下载源码
maven打包
copy到tomcat的webapps目录
重启tomcat
采取的版本控制方案如下图,虽然图看起来这么多弯弯曲曲的线,其实还是实施起来很简单的
两个原则
一:基于分支提测,预发布和生产基于主干进行发布
二:每次上线后,一定要及时通知其他分支及时从trunk merge到branch
war包部署方案
还有种部署方案:不基于源码打包部署,而是打一个war包,然后根据环境自动替换配置文件。这种部署方案比较适合分布式部署这种版本控制可以有细微变动:就是第四点,发布到线上后,发现存在bug,那么是从tag新建分支,修复后,可以直接从分支打包上生产。因为如果用jenkins自动部署工具,那么就需要保证取源码的svn路径不能发生改变。
如下图:
相关文章推荐
- setfacl命令 来自: http://man.linuxde.net/setfacl
- 【POJ】1721 - CARDS(置换群)
- 抽屉原理简单应用 POJ 2356 POJ 3370
- 在线lca算法模板
- CAS sso配置
- 浅谈前端与SEO
- Activity与Fragment的生命周期
- HDU 1070 Milk
- 获取当前段和行
- Docker: 如何修改 Docker 的镜像存储位置
- [Redis] redis入门
- 考虑这个简单的函数
- zk create() 方法
- DSP程序中 ,如何完成延时且不影响整体程序的工作效率
- 教你初步了解红黑树
- 命令行操作 sqlite 数据库
- Freescale android 4.4.2 平台工具链安装--技巧
- 搜集的一些mysql数据库操作,建表之类的就不写啦
- MFC一些理解
- CGLib动态代理(转载)