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

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

分支规范


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


常用分支


master


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


develop


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


release


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


hotfix


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


使用


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


注意


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


tag规范


打tag场景


  1. 在测试同学线上回归测试之后一定要给master分支添加tag,方便后续有需求时快速回滚到指定的稳定版本
  2. 当一个代码库在同一个时间段有多个需求要按顺序上线时,运维同学需要通过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:新渠道上线
相关文章
|
3月前
|
消息中间件 小程序 Java
【规范】看看人家Git提交描述,那叫一个规矩
本文通过IDEA中的Git描述规范插件【git commit message helper】,介绍了Git提交描述的规范流程,强调了团队开发中统一标准的重要性,并通过实例展示了规范的提交记录如何提高代码管理和维护效率。最后,文章提供了几个实用的Git提交描述案例,帮助读者更好地理解和应用这些规范。
50 0
【规范】看看人家Git提交描述,那叫一个规矩
|
3月前
|
敏捷开发 小程序 持续交付
【规范】Git分支管理,看看我司是咋整的
本文介绍了Git分支管理规范的重要性及其在企业中的应用。通过规范化的分支管理,可加速团队协作、确保代码质量、维护主分支稳定,并支持敏捷开发。文中详细描述了主分支(如master、develop)和辅助分支(如feature、hotfix)的作用,并提供了实际开发流程示例,包括开发前、开发中、提测、预生产和部署上线等阶段的操作方法。旨在帮助团队提高效率和代码质量。
135 0
【规范】Git分支管理,看看我司是咋整的
|
3月前
|
开发工具 git
Git——commit的提交规范
Git——commit的提交规范
97 4
|
3月前
|
JavaScript 测试技术 开发工具
Git 分支设计规范
Git 分支设计规范
179 11
|
3月前
|
存储 测试技术 开发工具
企业Git 规范的必要性-阿里云开发者社区
既然认同需要一份 Git 规范,那么这个规范需要规范哪些内容,解决哪些问题。
|
3月前
|
监控 程序员 开发工具
如何规范Git提交-参考阿里云开发者社区
这篇文章分享了如何规范Git提交,介绍了commit message的格式规范,并通过webhook监控机制来确保代码提交的规范性,从而提高研发效率和代码维护质量。
|
3月前
|
开发工具 git
Git——简单的分支规范
Git——简单的分支规范
37 0
|
4月前
|
测试技术 开发工具 git
git 提交规范
git 提交规范
156 2
|
4月前
|
前端开发 测试技术 开发工具
|
5月前
|
开发工具 git
idea的git reset current branch to here操作详解
idea的git reset current branch to here操作详解
499 1