Git 分支规范

Git 是开源的分布式版本控制系统,用来记录团队成员在项目上所做的任何变更,方便追溯项目的各版本内容和修改历史,是一款功能强大的多人协作工具。

在学习使用这款工具之前,我们先要明确一些分支的命名规范和用途。各个团队的规范都不太相同,这里主要介绍我个人在工作中使用的分支规范供大家参考。

master分支:主分支,这里的项目内容与线上版本保持一致,是稳定的版本。由于 「master」容易让人联想到奴隶制,所以现在Github新建仓库的主分支默认名称改为了 「main」。

feature分支:特性分支。成员需要开发新的项目内容时,就从master分支上拉一个新的特性分支,命名为feature/xxxxxx部分命名要明确体现所实现的功能,如:feature/homePage

hotfix分支:热修复分支。用于修复线上问题。当线上项目发现问题需要及时修复的时候,从master 分支拉一个热修复分支,命名为hotfix/xxx,在分支上进行bug的修复工作。

release分支:测试、发布分支。从master分支拉出,然后合并需要测试、发布的特性分支。分支命名可以以时间命名,如release/20210103


团队约定的开发工作流程如下:

  1. 项目成员从master分支拉出各自的feature分支开发自己的需求;
  2. 负责人从master分支拉出release分支,将需要测试、发布的feature合并到该release分支上,如果有冲突则在release分支上进行解决。如果master分支有新的提交,则需要再合并一下master分支,保证包含线上代码。之后部署测试环境进行测试;
  3. 对测试通过的release 分支进行发布,发布后进行线上验证,如果验证有问题则进行版本回退,将master重新部署线上;
  4. release分支发布后,线上验证没问题,则将release分支合并到master分支,使用版本(v1.0.0)或者时间(v20200103)打上tag,方便后续进行版本的追溯;
  5. 如果遇到线上问题需要紧急修复,则从master分支拉一个hotfix分支,修复成功后直接进行测试发布,合并master。如果是有多条分支的情况,则需要像步骤 2 一样拉出release分支进行合并再走测试发布流程,方便解决冲突。

如果文章对你有帮助,可以点个赞鼓励一下~

你可能感兴趣的:(Git,git,项目管理)