zoukankan      html  css  js  c++  java
  • svn版本控制方案:多分支并行开发,多环境自动部署

    背景

    keywords:svn,trunk,branch,jenkins,maven,merge

    两地同时开发一个产品,目前线上有3个环境:测试环境、预发布环境、生产环境。目前系统部署采用jenkins自动化部署工具

    用jenkins部署的方案

    jenkins 测试环境:配置了各个分支的svn 地址;预发布和生产环境配置为主干的svn地址。jenkins部署的大致流程为:

    1. 根据配置的svn路径
    2. 下载源码
    3. maven打包
    4. copy到tomcat的webapps目录
    5. 重启tomcat

    采取的版本控制方案如下图,虽然图看起来这么多弯弯曲曲的线,其实还是实施起来很简单的

    JENKINS.png

    两个原则

    一:基于分支提测,预发布和生产基于主干进行发布
    二:每次上线后,一定要及时通知其他分支及时从trunk merge到branch

    war包部署方案

    还有种部署方案:不基于源码打包部署,而是打一个war包,然后根据环境自动替换配置文件。这种部署方案比较适合分布式部署

    这种版本控制可以有细微变动:就是第四点,发布到线上后,发现存在bug,那么是从tag新建分支,修复后,可以直接从分支打包上生产。因为如果用jenkins自动部署工具,那么就需要保证取源码的svn路径不能发生改变。

    如下图:

    转发请附带原文地址:http://www.cnblogs.com/sloong/p/5684997.html

  • 相关阅读:
    微信小程序动态更改样式
    ionic toggle点击返回true/false支持自定义
    ionic 页面传递参数
    ionic 搜索双向数据绑定失效
    关于select的默认样式问题
    nn
    MVC api json 格式
    iis 500 解决方法
    关于qquu8 的主页修改
    CentOS6.5下MAC
  • 原文地址:https://www.cnblogs.com/sloong/p/5684997.html
Copyright © 2011-2022 走看看