Git操作规范之tag的使用技巧详解

 更新时间:2022年09月07日 11:18:39   作者:王中阳Go  
这篇文章主要为大家介绍了Git操作规范之tag的使用技巧详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

常用分支

首先分享一下我们的分支规范,然后再介绍摸索出的打tag的规范。

master

  • master : 主分支 , 最终在master分支对外发布,
  • 此分支只能从其他分支合并,不能再这个分支直接修改
  • 另外所有在master分支的推送应该打标签做记录,方便追溯
  • 例如release合并到master

develop

  • 主测试分支 , 基于master分支创建
  • 包含所有要发布到下一个版本的代码
  • 只能从其他分支合并
  • release 分支开发完成合并到develop

release

  • 开发分支, 基于master分支创建
  • 主要用于新需求新功能的开发
  • 功能开发完毕后合到develop分支发布测试环境,测试通过后合并到master发布生产环境
  • release可同时存在多个

hotfix

  • 补丁分支 , 基于master分支创建
  • 主要用于对线上的版本进行BUG修复
  • 修复完毕后合并到develop分支发布测试环境,测试通过后合并到master发布生产环境
  • 属于临时分支 , 补丁修复上线后可选删除

使用

  • 初始化项目 , 默认创建master分支
  • 从master拉取第一个develop分支
  • 从master拉取第一个release分支(多个开发人员拉取多个release同时进行并行开发 , 互不影响)
  • release分支完成后 , 合并到develop
  • 从develop分支打tag进行提测,提测过程中在原release分支修改BUG,重复步骤4
  • 测试通过后合并release到master,基于master分支打tag发布生产环境.此时可删除当前release分支
  • 上线之后若发现线上BUG , 从master拉取hotfix进行BUG修改
  • hotfix通过测试上线后可选删除当前hotfix

注意

  • 发布线上时一定是master合并开发分支,develop分支可能存在其它未测试通过代码
  • 两个分支进行合并时一定要拉取一下最新代码

tag规范

打tag场景

  • 在测试同学线上回归测试之后一定要给master分支添加tag,方便后续有需求时快速回滚到指定的稳定版本
  • 当一个代码库在同一个时间段有多个需求要按顺序上线时,运维同学需要通过tag标记区分要构建的代码,这时候需要添加tag。

tag命名规范

版本类型_版本号

比如:stable_v1.1.0

意为:稳定版v1.1.0

版本类型说明

版本类型说明备注
pre预发布版,用于运维同学知晓要构建的代码上线测试无误后删除pre类型的tag
stable稳定版,新功能上线后使用这个类型不删除tag,方便后续回滚
hotfix修复版,修复线上bug使用这个类型不删除tag,方便后续回滚
  • pre类型的tag应该在测试同学回归测试通过,打完stable类型或者hotfix类型的tag之后删除。
  • 代码仓库只保留stable类型和hotfix类型的tag,方便回滚到稳定版本;不保留pre这种过渡类型的tag。

版本号设置规范

比如版本号:v1.0.0

  • 第一个数字1,代表大版本,默认从1开始,大版本更新时才递增
  • 第二个数字0,代表小版本更新,默认从0开始
  • 第三个数字0,代表补丁版本,默认从0开始

场景举例

注意:在打tag的时候需要设置message,写清楚注释。

新需求

  • tag name命名规范:stable_v1.0.0
  • tag message:云仓商品添加销量字段

修复bug

  • tag name 命名规范:hotfix_v1.0.1
  • tag message:修复XXX bug

重大版本更新

  • tag name 命名规范:stable_v2.0.0
  • tag message:项目整体重构后上线

特殊情况

预发布环境,需要按顺序构建的:

  • tag name 命名规范:pre_v1.0.1
  • tag message:预发布tag:商品中心上线
  • tag name 命名规范:pre_v1.0.2
  • tag message:预发布tag:新渠道上线

以上就是Git操作规范之tag的使用技巧详解的详细内容,更多关于Git tag操作规范的资料请关注脚本之家其它相关文章!

相关文章

  • idea2020.1 常用设置图文详解

    idea2020.1 常用设置图文详解

    这篇文章主要介绍了idea2020.1 常用设置,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • 详解Git 的 rebase 命令使用方法

    详解Git 的 rebase 命令使用方法

    这篇文章主要介绍了Git 的 rebase 命令使用方法,接下来,我们使用rebase命令,其命令一般形式为git rebase feature,即表示在 master 分支上执行rebase命令,将 feature 分支的代码合并到 master 分支,本文给大家介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • 分享五个最佳编程字体

    分享五个最佳编程字体

    这篇文章主要介绍了分享五个最佳编程字体,需要的朋友可以参考下
    2016-10-10
  • 浏览器缓存知识小结及应用分析

    浏览器缓存知识小结及应用分析

    了解浏览器的缓存命中原理,是开发web应用的基础,本文着眼于此,学习浏览器缓存的相关知识,总结缓存避免和缓存管理的方法,结合具体的场景说明缓存的相关问题。希望能对有需要的人有所帮助
    2017-03-03
  • pytorch从头开始搭建UNet++的过程详解

    pytorch从头开始搭建UNet++的过程详解

    大家都知道Unet是一个最近比较火的网络结构,这篇文章主要介绍了pytorch从头开始搭建UNet++的过程详解,需要的朋友可以参考下
    2022-11-11
  • .gitignore文件作用及使用方法详解

    .gitignore文件作用及使用方法详解

    这篇文章主要为大家介绍了.gitignore文件作用及使用方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • 算法系列15天速成 第十四天 图【上】

    算法系列15天速成 第十四天 图【上】

    越是复杂的东西越能体现我们码农的核心竞争力,既然要学习图,得要遵守一下图的游戏规则
    2013-11-11
  • Web 开发常用工具 大家自己查找下载

    Web 开发常用工具 大家自己查找下载

    看到了Web通信分析工具 这篇文章,除了burpsuite其他我日常都经常使用。于似乎我整理了一下我自己用的其他的WEB开发工具。
    2009-06-06
  • 一文了解Hive是什么

    一文了解Hive是什么

    Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类 SQL 查询功能,对Hive是什么及优缺点感兴趣的朋友跟随小编一起看看吧
    2022-05-05
  • IDEA中使用Git拉取代码时报 Git pull failed原因及解决方法

    IDEA中使用Git拉取代码时报 Git pull failed原因及解决方法

    这篇文章主要介绍了IDEA中使用Git拉取代码时报 Git pull failed原因及解决方法,本文给大家介绍的非常详细对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08

最新评论