基本代码分支应该分为两类,一类是主要分支,包括线上主分支 Master 和开发主分支
Develop;另一类是辅助分支,包括测试分支 Release,线上紧急修复分支 Hotfix,以及功能
开发分支 Feature。
● Master 分支上的所有代码节点都必须处于可发布状态,且与线上运行的版本对应并且每一个
节点都生成了 Tag 标注了发布的版本 ID。
● Develop 分支上的代码节点代表了最新的功能开发进度,用于日常的功能开发,集成了多个新
开发的功能以及正式提测前的 bug 修复代码。
● Feature 分支用于管理功能的并行开发(命名建议为”feature-*”) ,起源于 Develop 分支,最终
也会归于 Develop 分支(要求采用--no-ff 的方式进行分支合并,以确保整个提交链的完整
性) 。
● Release 分支主要用于正式的测试并帮助构建可发布的代码(命名建议为”release-*”) ,起源于
Develop 分支,最终归于“develop”及“master”分支。正式提测后的 bug 修复必须在此分支上进
行,并且需尽量避免新功能的并入。每次当 Release 代码合并到 Master 分支时都必须反向合
并回 Develop 分支。
● Hotfix 分支用于紧急修复线上运行版本的关键 BUG(命名建议为”hotfix-*”) ,hotfix 分支基于
Master 分支创建,开发完后需要合并回 Master、Release 和 Develop 分支,同时在 Master
上打一个 Tag。

Release 和 Master 分支须受到保护,必须有固定的一到两名人员负责分支的合并操作。

提测规范
● 持续集成应用接入 QA 环境需根据线上最新版本代码做一次初始化
● 每次提交代码都需正确填写备注(功能描述) ,每次发版都要打 Tag 标签
● 提测期间有问题,基于 Release 分支修改,测试通过后基于 Release 发布
● 线上紧急 bug从 Master 拉 Hotfix 分支修改,合并至 Master 发版修复
● SA 组除 HotFix 外的发版均基于提测通过的 Release 分支

代码管理准则
● 创建分支要有计划性,尽可能的控制分支的数量
● 低版本总是积极的合并到高版本,同时注意反向合并
● 每次提交及合并的日志须完整规范,说明修改部分的意图
● 发起合并的版本务必经过冒烟自测及代码评审
● 珍惜每次提测,提测内容与修改内容相符

提交note:

[SiXing/Fix/Add/Modify][Model/Bug/Iteration]Func

Git 基本分支规范的更多相关文章

  1. 产品管理开发之Git工作流和分支规范推荐

    前言 无论是开源项目还是内部项目,使用Git都是大势所趋,尤其是在产品管理这块,使用Git大大提高了开发效率和产品的交付频率.本篇,针对Git的工作流和分支使用,进行了一些推荐. 目录 1     产 ...

  2. Git Flow 分支管理简述

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

  3. Git管理分支

    管理分支:git branch 直至现在为止,我们的项目版本库一直都是只有一个分支 master.在 git 版本库中创建分支的成本几乎为零,所以,不必吝啬多创建几个分支.下面列举一些常见的分支策略, ...

  4. Git常用命令和Git团队使用规范指南

    转自:https://wsgzao.github.io/post/git/ 前言 在2005年的某一天,Linux之父Linus Torvalds 发布了他的又一个里程碑作品——Git.它的出现改变了 ...

  5. Git设置分支保护实现CodeReview卡点

    # Git设置分支保护实现CodeReview卡点 > From:https://blog.csdn.net/crisschan/article/details/100922668 > G ...

  6. git 创建分支 并 提交到远程分支

    git branch(分支命令的使用http://hbiao68.iteye.com/blog/2055493 0.可以通过git branch -r 命令查看远端库的分支情况 1,从已有的分支创建新 ...

  7. 使用git新建分支以及管理分支

    在进行分支相关的操作前, 我们需要保持主分支干净, 所谓的干净就是没有任何改变(所有更改都已经commit 并 push),那么你可以在任何时候从你的主分支创建一个新分支. 为了方便代码管理,我们应该 ...

  8. Git入门指南十一:Git branch 分支与合并分支

    十五. Git branch 分支 查看当前有哪些branch bixiaopeng@bixiaopengtekiMacBook-Pro xmrobotium$ git branch * master ...

  9. git创建分支并提交项目

    git 创建分支, 切换分支, 合并分支, 删除分支及提交[commit提交到本地仓库push名利提交到远程服务器], 检出[pull], 冲突修改, 本地仓库同步远程服务器[pul和push命令l] ...

随机推荐

  1. WPF DataTrigger的两个用法

    1.用在textbox等输入控件上,验证输入是否合法.首先定义一个Converter, 2.Xaml里面这样子写,意思是输入的数字,如果小于100则显示为红色. 3.combox等列表控件里面,也可以 ...

  2. 转: telnet命令学习

    1.每天一个linux命令(58):telnet命令 转自: http://www.cnblogs.com/peida/archive/2013/03/13/2956992.html telnet命令 ...

  3. 导出DLLRegisterServer接口遇到的问题

    I'm trying to add DLLRegisterServer and DLLUnregisterServer entry points to an existing DLL that is ...

  4. Http具体解释

    一.Http是位于网络层的超文本传输协议. 我们用浏览器浏览网页就是用的http协议实现的. 二.Http请求详细分析 我们能够用httpwatch工具对http进行抓包分析 下面就是请求www.si ...

  5. 封装scrollView 循环滚动,tableViewCell(连载) mvc

    封装 封装 封装 ... 封装的重要性太重要了 给大家在送点干货 从一个项目中抽取出来的.和大家一起分享 封装scrollView 循环滚动.tableViewCell(连载) 明天还会更新 tabl ...

  6. C#.NET常见问题(FAQ)-如何给Listbox添加右键菜单

    1 拖一个ContextMenuStrip控件,然后可以直接在界面上编辑,也可以在FormLoad的时候动态添加   2 把这两个控件关联起来就可以实现listBox1的右键菜单跟ContextMen ...

  7. css中url的路径含义及使用

    http://www.jb51.net/css/37554.html 在CSS中有用url语法来指定background-image或是其他引用文件中,如: 复制代码 代码如下: .mainheade ...

  8. android google map v1 v2 v3 参考

    V1,V2已经不被推荐使用,谷歌强烈推荐使用V3. 本人在选择时着实纠结了良久,现在总结如下: 对于V1,现在已经申请不到API KEY了,所以不要使用这个版本.这个是网址:https://devel ...

  9. iPhone调用ffmpeg2.0.2解码h264视频的示例代码

    iPhone调用ffmpeg2.0.2解码h264视频的示例代码 h264demo.zip 关于怎么在MAC下编译iOS下的ffmpeg请看 编译最新ffmpeg2.0.1(ffmpeg2.0.2)到 ...

  10. wepy - 与原生有什么不同(单文件模式)

    小程序采用同文件夹(文件名),统一通过app.json来管理 而vue以及wepy采用的是单文件模式(js.html.css)合并在一起了! wepy单文件模式 <style> .ok{ ...