基本代码分支应该分为两类,一类是主要分支,包括线上主分支 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. TreeListControl:设置行样式

    <Style x:Key="OddEvenRowStyle" TargetType="{x:Type dxg:GridRowContent}"> & ...

  2. Cognos创建Oracle数据源错误以及客户端生成加密信息错误

    报加密错误,先删除 signkeypair csk encrytkeypair三个目录错误一: 创建Oracle数据源错误,在cognos connection中创建oracle的数据源,一直测试不成 ...

  3. 查看centos当前版本

    # rpm -q centos-release centos-release-5-4.el5.centos.1

  4. [Tools] Target specific browsers with babel-preset-env and the babel pollyfill (browserslist)

    Converting all of our modern JavaScript into ES5 compatible syntax is a great way to use modern feat ...

  5. Android的View和ViewGroup分析

    1. 概念 Android中的View与我们曾经理解的"视图"不同.在Android中,View比视图具有更广的含义,它包括了用户交互和显示,更像Windows操作系统中的wind ...

  6. 【Java VisualVM】使用 VisualVM 进行性能分析及调优

    转载:https://blog.csdn.net/lmb55/article/details/79267277 一.概述 开发大型 Java 应用程序的过程中难免遇到内存泄露.性能瓶颈等问题,比如文件 ...

  7. uva 10670 Work Reduction(贪心)

    题目连接:10670 - Work Reduction 题目大意:有tol的工作量,和要求达到的工作剩余量sur,然后是公司总数,对应每个公司提供两种服务,1.完成一个工作量,2.完成当前未完成工作量 ...

  8. HTML解析模块

    import html html.escape(s, quote=True) 对特殊字符进行转义 Convert the characters &, < and > in stri ...

  9. openerp发送给群组信息

    发送给群组 self.pool.get('mail.group').message_post(cr, uid, [1],             body=_('Welcome to ! Please ...

  10. Eclipse 如何创建Web项目

      Eclipse 如何创建Web项目 CreateTime--2018年3月8日16:43:33 Author:Marydon 第一步: 右键-->New-->Dynamic Web P ...