代码提交分支规范

2023-12-21 18:49:58

二、分支介绍

1.1 分支简介

tag:用于记录每个发布的版本。由对应发布分支或者hotfix分支,发布完成后打tag

master:记录最新发布代码

hotfix:基于某个已发布版本(tag)修复问题快速发布。

feature-jenkins:自动打包分支,由开发分支往该分支合并代码,自动触发jenkins打包流程。

feature-${ver}:当前开发分支,从master分支创建。封版完成:1)合并到feature-jenkins打包验证通过发布;2)合并到master,用于下一个版本分支创建;3)打tag记录

feature-${dev}:个人开发分支,从版本分支拉取创建,修改提交到版本分支

1.2 hotfix流程

从对应BUG版本的tag中创建hotfix分支

从hotfix分支创建对于的问题解决开发分支:feature-${dev}

问题修复自测通过之后,代码合并到hotfix分支

hotfix分支打包验证&发布,出tag

当前开发版本分支拉取同步hotfix修改

1.3 版本开发流程

从master创建版本分支:feature-v_1.2.0

个人从版本分支创建/同步个人分支:feature-lisj

个人开发完成提交MR合并代码(参考第二部分)。MR之前手动打包自测功能

MR之后可选向feature-jenkins提交MR,触发自动出包,提供给测试回归

封版之后,feature-v_1.2.0版本分支出包线上环境回归。

线上环境出包回归通过,feature-v_1.2.0代码合并到master,并由feature-v_1.2.0分支打tag

二、Merge合并

提交MR流程,以feature-lisj解决完 mac多网络问题往feature-2.2.0.0合并

// [feature-lisj]:缓存修改代码git stash// [feature-lisj]:本地切换到feature-2.2.0.0分支git checkout feature-2.2.0.0// [feature-2.2.0.0]:拉取feature-2.2.0.0远程仓库最新代码git pull// [feature-2.2.0.0]:切回feature-lisj开发分支git checkout feature-lisj// [feature-lisj]:rebase feature-2.2.0.0新提交git rebase feature-2.2.0.0// [feature-lisj]:释放修改代码,如果存在冲突解决冲突git stash pop// [feature-lisj]:解决冲突后,提交修改代码,推送到远程仓库git add .git commit -m "[ESSC-18] 解决多网络环境切换策略"git push

完成以上操作之后,在云效代码仓库创建MR任务。

三、commit规范

  • git commit Angular规范
  • commit信息里如果有对应任务/BUG单,以[任务/缺陷 ID]作为开头,例如:[ESSC-1] 离开房间摄像头未关闭

四、jenkins打包

自动打包:feature-jenkins分支有MR合并之后自动触发jenkins打包

手动打包:可以选择打包分支,例如hotfix或者个人验证某个功能时选择对应个人分支。

配置最多排队任务,超过时在打包触发时报错:当前过多排队打包任务

文章来源:https://blog.csdn.net/weixin_42333548/article/details/135135873
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。