Git Flow / Git 分支模型

2025年3月17日 | 阅读 3 分钟

Git flow 是一组开发人员在使用 Git 时可以遵循的指南。 我们不能将这些指南称为规则。 这些不是规则; 它是一个理想项目的标准。 这样开发人员就可以轻松理解这些内容。

开发人员将其称为分支模型,并用作项目的中央存储库。 开发人员工作并将他们的工作推送到主存储库的不同分支。

Git Flow

一个项目中有不同类型的分支。 根据标准分支策略和发布管理,可以有以下类型的分支

  • Master
  • 开发 (Develop)
  • 热修复 (Hotfixes)
  • 发布分支 (Release branches)
  • 功能分支 (Feature branches)

每个分支都有其含义和标准。 让我们了解每个分支及其用途。

主要分支

分支模型的两个分支被认为是项目的主要分支。 这些分支如下

  • master
  • develop
Git Flow

Master 分支

master 分支是项目的主分支,其中包含所有最终更改的历史记录。 每个开发人员都必须使用 master 分支。 master 分支包含 HEAD 的源代码,始终反映项目的最终版本。

您的本地存储库有其 master 分支,始终与远程存储库的 master 分支保持同步。

建议不要搞乱 master。 如果您编辑了一个组项目的 master 分支,您的更改会影响到其他人,并且很快就会出现合并冲突。

Develop 分支

它与 master 分支并行。 它也被认为是项目的主要分支。 此分支包含下一个版本的最新交付的开发更改。 它具有该版本的最终源代码。 它也被称为“集成分支”。

当 develop 分支达到稳定点并准备好发布时,应将其与 master 合并并标记为发布版本。

支持性分支

开发模型需要各种支持性分支,用于并行开发、跟踪功能、协助快速修复和发布以及其他问题。 这些分支的生命周期有限,使用后会被删除。

我们可以使用的不同类型的支持性分支如下

  • 功能分支 (Feature branches)
  • 发布分支 (Release branches)
  • 热修复分支

这些分支中的每一个都是为特定目的而创建的,并且有一些合并目标。 从技术角度来看,这些分支意义重大。

功能分支

功能分支可以被认为是主题分支。 它用于为项目的下一个版本开发新功能。 此分支的存在是有限的; 在其功能与 develop 分支合并后,它将被删除。

Git Flow

要了解如何创建功能分支,请访问此处

发布分支

创建发布分支是为了支持新版本的发布。 高级开发人员将创建一个发布分支。 发布分支将包含预定数量的功能分支。 发布分支应部署到暂存服务器进行测试。

允许开发人员进行小错误修复并准备此分支上发布的元数据。 完成所有这些任务后,可以将其与 develop 分支合并。

创建所有目标功能后,可以将其与 develop 分支合并。 发布分支的一些常用标准如下

  • 通常,高级开发人员会创建一个发布分支。
  • 发布分支将包含预定数量的功能分支。
  • 发布分支应部署到暂存服务器进行测试。
  • 需要在发布分支中解决任何需要改进的错误。
  • 发布分支必须合并回开发分支和 master 分支。
  • 合并后,必须使用版本号标记带有 develop 分支的发布分支。

要创建发布分支,请访问Git 分支

要在合并发布分支后标记分支,请访问Git tag

热修复分支

热修复分支类似于发布分支; 两者都是为新的生产版本而创建的。

热修复分支是由于对项目的紧急操作而产生的。 如果生产版本中存在严重错误,则可以在您的项目中从热修复分支分支出来。 修复该错误后,可以使用标签将此分支与 master 分支合并。

Git Flow
下一个主题Git 速查表