Git分支定义

分支说明:

 

      git分支常用的分为master、release、bugfix、develpo四种,以下为每个分支的释义。

 

  • master分支(线上分支)

    • 分支仅有一个,用于存储正式发布的历史,在版本库初始化时自动生成。
    • master分支是所有开发活动的核心分支,所有的开发活动产生的输出物最终都会反映到主分支的代码中,master分支应该始终和生产环境保持一致。
    • 由于master和生产代码是一致的,没有人包括技术负责人能不允许在master上直接开发,真正的开发代码应当写在其他分支上。

    规约:当一个发布分支release-x.y.z确认可发布时,由QA合并到master分支并打标签(x.y.z-state)最终发布。

  • release分支(发布分支)

    • 当项目确定好目标版本后,第一件事情就是创建发布分支,发布分支是基于master分支创建而来。
    • 发布分支通过要实现的功能约定版本,保证同一份代码由不同的开发组人员开发(特别是多版本并行开发)是可归并且不冲突的。
    • 所有与本项目相关的代码都在发布分支中,发布分支以release/开头,如这次的发布分支名为release/x.y.z,x.y.z表示此次目标发布版本。
    • 确认release版本后,在release/change.log文件中增加版本x.y.z相对上一版本(x.y.z-1)变更项说明(包括是否实现,实现情况等),在release/sql下新增update-x.y.z-to-x.y.z.sql对应版本的增量升级脚本。

    规约:一个发布版本对应一个唯一分支;修复分支由QA合并到master。

  • bugfix分支(修复分支)

    • 由master分支产生,系统日常使用中难免会发现缺陷,通常一个缺陷一个对应一个fixbug修订分支。
    • bugfix分支是从rmaster分支x.y.z上面分出来的,在对bug修补之后,QA测试通过后再合并进master分支,最终发布到master分支。
    • bug id/desc表示修复bug的ID标识(对应Bug缺陷管理系统ID)或描述;[-name-yyMMdd]可选项,表示修复人和修复开始时间。

    规约:修复分支由QA合并到master。

  • develop分支(开发分支/功能分支)

    • 由release分支产生,可以和所分配给开发同学的功能相对应,可以是一个功能(可大可小)由多个同学(多个分支)开发、或者一个功能一个同学来开发。
    • feature id/desc表示功能标识或者描述;[-name-yyMMdd]可选项,表示开发人和开发开始时间。
posted @ 2019-10-30 18:22  曾经那个少年就是我  阅读(1419)  评论(0编辑  收藏  举报