git-代码分支管理
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-代码分支管理的更多相关文章
- Git的分支管理
0.引言 本文参考最后的几篇文章,将git的分支管理整理如下.学习git的分支管理将可以版本进行灵活有效的控制. 1.如何建立与合并分支 1.1分支的新建与合并指令 新建分支 newBranch,并进 ...
- 你真的了解git的分支管理跟其他概念吗?
现在前端要学的只是太多了,你是不是有时会有这个想法,如果我有两个大脑.一个学Vue,一个学React,然后到最后把两个大脑学的知识再合并在一起,这样就能省时间了. 哈哈,这个好像不能实现.现实点吧!年 ...
- git的介绍、git的功能特性、git工作流程、git 过滤文件、git多分支管理、远程仓库、把路飞项目传到远程仓库(非空的)、ssh链接远程仓库,协同开发
Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码 ...
- 引入git flow分支管理
git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴.它可以使得版本库的演进保持简洁,主干清晰,各个分支各司其职.井井有条. 先看下Vincent Driessen ...
- git(二) 分支管理
概念 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平行宇 ...
- Git Flow 分支管理简述
概述 Git 是什么 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...
- git flow分支管理
阅读目录 两种核心分支 三种临时分支 Git Flow流程示例代码 Git Flow工具 分支命名规范 总结 git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴. ...
- 139.00.005 Git学习-分支管理
@(139 - Environment Settings | 环境配置) 一.Why? 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交, ...
- git的使用学习(五)git的分支管理
分支管理 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平 ...
- GIT之分支管理
分支管理 一.分支推进 主分支 单线分支,随着代码的提交而形成的一条直线,HEAD 随着commit提交之后的节点移动而移动. 子分支 当切换到子分支的时候,HEAD 则指向子分支的节点. 在子分支上 ...
随机推荐
- 分布式ID生成方案汇总
1.目标 1.1.全局唯一 不能出现重复的ID,全局唯一是最基本的要求. 1.2.趋势有序 业务上分页查询需求,排序需求,如果ID直接有序,则不必建立更多的索引,增加查询条件. 而且Mysql Inn ...
- GET请求和POST请求的request和response的中文乱码问题
GET请求(request)中文乱码解决方案: 在Services的server.xml的配置文件的第一个Connector标签中添加属性URIEncoding="UTF-8" P ...
- Linux:apache第一个简单的站点
前提: apache安装目录再/application/apache/ 1.先进入安装目录中 cd /application/apache/ ls 查看目录中的内容 可以看到好多我们常见的文件夹,bi ...
- oracle之SQL的数据类型
SQL的数据类型 3.1 四种基本的常用数据类型(表的字段类型) 1.字符型, 2.数值型,3.日期型,4.大对象型 3.1.1 字符型: char 固定字符,最长2000个 ...
- 蓝桥杯校内模拟赛Python解答
@ 目录 1. 15.125GB 2. 约数个数 3. 叶结点数 4. 数字9 5. 数位递增的数 6. 递增三元组 7. 音节判断 8. 长草 9. 序列计数 10. 晚会节目单 1. 15.125 ...
- linux命令之修改yum源为国内镜像
命令: centos7 修改yum源为阿里源 首先是到yum源设置文件夹里 1. 查看yum源信息: yum repolist 2. 安装base reop源 cd /etc/yum.repos.d ...
- Python安装与环境变量配置 入门详解 - 精简归纳
Python安装与环境变量配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Python安装与环境变量配置 入门详解 - 精简归纳 一.下载Py ...
- TP6 数据库管理工具,生成前后台CRUD页面
Tp6 数据库管理工具,数据库内容的搬运工 支持MySQL数据库,可视化配置直接生成前后台CRUD页面减少重复劳动,可以直接作为后台页面使用.前端页面技术基于 iszsw/surface 支持多表关联 ...
- 精心总结ansible-playbook剧本的这6种变量
#变量作用 #根据需求灵活修改,如:需要安装不同版本号的服务,或进行版本升级回退等 1.通过vars定义变量 #1.1.定义一个变量 version: 1.1.2 #定义多个变量 vars: - v1 ...
- pycharm安装注意
在安装pycharm时,一定要先去官网下载安装python新版. 安装python时候一定要选择自己熟悉的路径 在pycharm创建项目时编译器选择versions/3.8/bin/python3,这 ...