环境分支-git版本管理

常见规范


说明分支环境分支环境分支环境
Git 仓库develop / dev / featurerelease / hotfixmaster / prod / main
运行环境开发测试生产 / 线上
自动部署---
非自动部署前端打包给后台、运维、测试都可以同上同上

说明: 大众公司的开发流程规范,比较常见

  • 开发: 开发分支一般以 develop 和 dev 为主,较为常见,命名都是可以的,以 dev 作说明,也是代码开发的主干,顺流而下,开发的时候主干dev 不动,做不同的需求、功能,从 dev 迁出分支,规范命名为 feature-xxx,xxx 为功能需求,一般为需求号(定义需求的时候,需求文档每个需求有对应的需求号),也可做其他命名,如 login 等,没有严格规定,开发完成后合并到 dev 上,再开发再迁分支,测试没问题之后删掉迁出分支即可,迁出或合并 release 分支。

    优点:最大程度减小代码冲突,不影响主干流程与走向

    缺点:多了一步操作,大多数人不愿意接受

  • 测试: 测试分支为 release 分支,也有称 test 的,不规范。测试人员对 release 分支进行测试,测试出现问题通知开发在 release 上修改,然后自测无问题合并到 dev,master,并在此分支进行 tag 打标签处理。

    优点:减少测试成本,无其他分支,正常测试版本居多,分工不同

    缺点:严格程度,细节把控可能不到位(需对比严格规范才能理解)

  • 生产: 也叫线上,此环境就是用户所用的环境,进行体验并使用。如果没有问题,则正常维护以上三个步骤即可,如果体验问题严重,需退回上一个稳定版本(tag,名称 + 版本号 + 日期 + 新需求说明),如果使用问题不严重,则在 master(名字而已,也有 prod,main,以 master 为例)迁出分支 hotfix,命名为 hotfix-xxx,xxx 为 bug 号,然后修复,此时,测试分支为 hotfix 这个分支,修复完成之后合并到 dev,再合并到 release 进行测试,无问题按照流程走,并打 tag 标签,此时是小版本,所有的 hotfix 都是小版本,release 是大版本,有问题重新修改

    优点:流程规范,一般不会有大问题

    缺点:流程繁琐,小公司不屑之,浪费时间

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lAB1JavV-1616724042879)(/Users/manman/Library/Application Support/typora-user-images/image-20210325132603353.png)]


严格规范


说明分支环境分支环境分支环境分支环境
Git 仓库develop / dev / featuresituatmaster / prod / main
运行环境开发集成测试,内部测试验收测试,产品需求测试生产 / 线上
自动部署----
非自动部署 jar 包alpha(α)beta(β)RCrelease

说明: 大公司或严格软件公司的开发流程规范,比较常见

  • 开发: 开发分支一般以 develop 和 dev 为主,较为常见,命名都是可以的,以 dev 作说明,也是代码开发的主干,顺流而下,开发的时候主干dev 不动,做不同的需求、功能,从 dev 迁出分支,规范命名为 feature-xxx,xxx 为功能需求,一般为需求号(定义需求的时候,需求文档每个需求有对应的需求号),也可做其他命名,如 login 等,没有严格规定,开发完成后合并到 dev 上,再开发再迁分支,测试没问题之后删掉迁出分支即可,迁出或合并 sit 分支。

    优点:最大程度减小代码冲突,不影响主干流程与走向

    缺点:多了一步操作,大多数人不愿意接受

  • 测试: 测试分支为 sit,uat 分支。

    • sit: 集成测试,也叫内部测试。测试人员(公司测试人员)对 sit 分支进行测试,测试出现问题通知开发在 sit 上修改或者其自己对应的分支进行修复操作,然后自测无问题合并到 sit 进行测试,无问题迁出或合并到 uat,测试过程中,可进行粗略测试,如数据,随便编写。
    • uat: 验收测试,也就是产品需求对相关需求功能进行验收,测试步骤极为严格,必须按照真实情况走流程,如存在问题,走 dev、sit 流程,如无问题,则合并到 master 分支,并在此分支进行 tag 打标签处理。

    优点:细节把控到位,极大程度减小缺陷

    缺点:测试繁琐,要求严格

  • 生产: 也叫线上,此环境就是用户所用的环境,进行体验并使用。如果没有问题,则正常维护以上三个步骤即可,如果体验问题严重,需退回上一个稳定版本(tag,名称 + 版本号 + 日期 + 新需求说明),如果使用问题不严重,则在 master(名字而已,也有 prod,main,以 master 为例)迁出分支 hotfix,命名为 hotfix-xxx,xxx 为 bug 号,然后修复,此时,测试分支应该是 hotfix,修复完成之后合并到 dev,master,无问题按照流程走,打小版本 tag,小版本,uat 是大版本,有问题重新修改

    优点:流程规范,一般不会有大问题

    缺点:流程繁琐,小公司不屑之,浪费时间

自动部署,无需操作,代码上传即可

非自动部署: 需要手动打包给测试或运维,看流程需要,开发版本为α,sit 版本为β,uat 版本为 RC,生产版本为 release,命名格式一般为 2.0.0.2.21.325-Beta.zip 诸如此类,rar,7z 看需要

**❈ ** 正常一般生产环境是运维,其他应该是测试

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值