1. git代码分支管理
     DEV SIT UAT PET PRE PRD PROD常见环境英文缩写含义

英文缩写 英文 中文
DEV development 开发
SIT System Integrate Test 系统综合测试(内测)
UAT User Acceptance Test 用户验收测试
PET Performance Evaluation Test 性能评估测试(通常叫压力测试)
SIM simulation 仿真
PRD/PROD Production 产品/正式/生产

2. 在给大家介绍一些开发过程中,四个环境以及各自的功能特点,四个环境分别是:prod、pre、test、dev环境,中文名字:生产环境、灰度环境、测试环境、开发环境,其实大家看英文应该就差不多可以看出来对应的是什么环境

  • prod环境:生产环境、面向外部用户的环境、连接上互联网既可访问的正式环境
  • pre环境: 预生产、外部用户可以正常访问,但是服务器配置相对低,其他和生产一样
  • test环境:测试环境、外部用户无法访问,专门给测试人员使用的,版本相对稳定。
  • dev环境:开发环境、外部用户无法访问,开发人员使用,版本变动很大。

3. 下面介绍为什么要使用四个环境原因:
其实大多数人都知道四个环境指的是什么,但是很多人却不知道为什要这么区别,甚至为了省事就只有dev和prod环境。如果项目没上线之前是没有问题,但是如果项目上线后就会有非常麻烦的事情发生。下面我们就针对这四种环境,来分析一下对应的各种场景。
  1) 第一种场景是dev+prod环境
如果我们只有dev和prod环境,prod环境突然发现bug,需要紧急处理,只有两个环境,这个时候我们要如何解决问题呢?

  • 第一:我们要首先去prod环境拉取版本1.0.0的更新到dev上,而prod现在才1.0.0、所以这个时候我们需要重新创建一个bug修复hotfix分支,这边我们可以叫做1.0.0.1然后修改代码之后需要放到dev环境上面测试,这个时候会变成如下图所示状态:

然后测试通过之后,我们需要将1.0.0.1发布到dev环境,然后合并1.0.0.1的代码到1.0.0中,最后将dev环境修改为1.0.0,如下上图所示:
    提示:
        在dev1.0.0.1测试环境期间,所有的开发工作全部停止,必须等到测试通过发布到生产上面才可以,如果仅仅只有两个环境,代价实在太大了
  2) 第二种场景就是dev+test+prod
      如果我们多了一个test环境情况就会好很多了,比如上面说的问题,我们就可以这样来处理了
      我们可以在test1.0.0上面直接修改,修改后的版本是1.0.0.1,测试通过之后直接发布到pro环境即可。然后再将test中1.0.0.1代码合并到1.1.0,最后dev的版本升一级就可以了。

提示:
         这样的好处就是不会影响dev开发环境,不管怎么修改test,都不会造成dev暂停。
  3) 第三种场景:部署流水线环境DEV+SIT+UAT+PET压力测试环境+PAT+PROD

4) 部署流水线的阶段和环境

  

5) 流水线反馈过程

  

git-代码分支管理的更多相关文章

  1. Git的分支管理

    0.引言 本文参考最后的几篇文章,将git的分支管理整理如下.学习git的分支管理将可以版本进行灵活有效的控制. 1.如何建立与合并分支 1.1分支的新建与合并指令 新建分支 newBranch,并进 ...

  2. 你真的了解git的分支管理跟其他概念吗?

    现在前端要学的只是太多了,你是不是有时会有这个想法,如果我有两个大脑.一个学Vue,一个学React,然后到最后把两个大脑学的知识再合并在一起,这样就能省时间了. 哈哈,这个好像不能实现.现实点吧!年 ...

  3. git的介绍、git的功能特性、git工作流程、git 过滤文件、git多分支管理、远程仓库、把路飞项目传到远程仓库(非空的)、ssh链接远程仓库,协同开发

    Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码 ...

  4. 引入git flow分支管理

    git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴.它可以使得版本库的演进保持简洁,主干清晰,各个分支各司其职.井井有条. 先看下Vincent Driessen ...

  5. git(二) 分支管理

    概念 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平行宇 ...

  6. Git Flow 分支管理简述

    概述 Git 是什么 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

  7. git flow分支管理

    阅读目录 两种核心分支 三种临时分支 Git Flow流程示例代码 Git Flow工具 分支命名规范 总结 git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴. ...

  8. 139.00.005 Git学习-分支管理

    @(139 - Environment Settings | 环境配置) 一.Why? 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交, ...

  9. git的使用学习(五)git的分支管理

    分支管理 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平 ...

  10. GIT之分支管理

    分支管理 一.分支推进 主分支 单线分支,随着代码的提交而形成的一条直线,HEAD 随着commit提交之后的节点移动而移动. 子分支 当切换到子分支的时候,HEAD 则指向子分支的节点. 在子分支上 ...

随机推荐

  1. 如何配置node环境变量

    1,安装node.js   最后安装的目录在 检测node安装成功   node -v 如果报错   没有默认装在c盘  pro 需要配置环境变量 Npm   node  package  manag ...

  2. 剑指 Offer 19. 正则表达式匹配

    题目描述 请实现一个函数用来匹配包含'. '和'*'的正则表达式.模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(含0次).在本题中,匹配是指字符串的所有字符匹配整个模式. ...

  3. Agumaster 增加日交易数据列表

  4. Mybatis----Mapper配置文件

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...

  5. TP6.0 获取请求对象的五种方式

    目录 1. 门面类 2. 依赖注入 3. 框架提供的基础控制器的 request 属性 4. request() 助手函数 5. app() 超级助手函数 think\Request.think\fa ...

  6. python 3 continue 循环控制

  7. JavaScript 伪Ajax请求

    伪Ajax 通过iframe以及form表单,可以实现伪Ajax的方式. 并且它的兼容性是最好的. iframe iframe标签能够获取一个其他页面的文档内容,这说明它内部肯定是发送了一个请求,并且 ...

  8. js-正则表达式的初步应用(一)

    一.正则表达式是使用单个字符串来描述.匹配一系列符合某个句法规则的字符串搜索模式.注:搜索模式也可用于文本替换 例子1 输出结果  注:(我为了方便在控制台输出,所以结果如下) 例子2 输出结果 上面 ...

  9. 用友yonsuite产品二开之简单的yonsql查询小工具

    和以往的用友产品不同,yonsuite产品开发了低代码平台,满足客户的个性化开发需求.嗯~,一句话不知当讲不当讲,那就讲:所谓低代码平台就是开发不想用实施不会用系列.让我一个开发感受到了憋屈.

  10. Shareplex搭建步骤(rman)

    实施例:rman/BCV 环境准备 splex软件上传 源端: #mkdir /quest #chmod -R 755 /quest #chown -R oracle:oinstall /quest ...