news 2026/6/3 12:48:30

Git 分支规范

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Git 分支规范

文章目录

  • 0.简介
  • 1.分支命名
  • 2.分支使用
  • 3.代码发布
  • 参考文献

0.简介

Git 分支规范是一套约定,用以指导团队成员如何命名和管理 Git 仓库中的分支。

实施一致的分支规范可以帮助团队成员快速理解各个分支的作用,提高团队协作效率,简化版本控制流程,并用于自动化持续集成/持续部署(CI/CD)流程。

1.分支命名

以下是一些广泛采用的 Git 分支命名和管理规范:

  • 主分支(Main)

main 是主分支,包含生产环境代码,应始终保持稳定和可部署状态

  • 开发分支(Develop)

develop 是次级主分支,用作开发的主要基线,所有特性分支都从此分支检出,并最终合并回来。

# 从 main 创建 develop 分支gitswitch-cdevelop main# 从 develop 检出特性分支gitswitch-cfeature/add-user-authentication develop# 特性开发完成后合并回 developgitswitch developgitmerge --no-ff feature/add-user-authentication# --no-ff 禁用快进合并,强制创建合并提交,保留特性分支的历史轨迹,便于后续追溯
  • 特性分支(Feature)

feature/前缀用于新功能开发的分支。例如:feature/add-user-authenticationfeature/improve-ui-layout

特性分支从 develop 分支检出,并在完成后合并回 develop。如果没有 develop 分支,则直接从 main 检出,并在完成后合并回 main。

  • 修复分支(Bugfix)

bugfix/前缀用于错误修复的分支。例如:bugfix/login-failbugfix/memory-leak

修复分支通常从 develop 分支检出,并在修复后合并回 develop。如果没有 develop 分支,则直接从 main 检出,并在完成后合并回 main。

  • 热修复分支(Hotfix)

hotfix/前缀用于生产环境中紧急问题的修复。例如:hotfix/critical-security-patch

热修复分支从 main 分支检出,并在修复后合并回 main。

  • 发布分支(Release):

release/前缀用于即将发布的版本。例如:release/v1.0.1

发布分支从 develop 分支检出,用于最终的测试和微调,然后合并到 main 并打标签(tag),最后也应合并回 develop。

标签用于标记发布点,如版本发布。标签应该遵循语义化版本命名风格,如 v1.2.0。

  • 测试分支(Test)

为测试相关代码(单元测试、集成测试、测试工具开发等)创建分支时使用test/前缀,如test/v2508_add_unit_tests

  • 其他类型的分支

前缀chore/适用于与业务功能无关的维护性任务(如工具链配置、告警规则优化、代码风格调整)。

chore/v2508_warning_optimize chore/v2508_cleanup_deprecation_notices

前缀refactor/适用于非业务功能变更的代码结构重构,其核心特点是不改变外部功能行为,仅优化代码内部结构

refactor/v2508_split_big_funcs refactor/v2508_unify_naming_style

2.分支使用

  • 主分支代码需要保证随时可以发布。
  • 原则上一个需求或者一个bug单独一个分支,不允许共用分支。
  • 针对测试环境不够用的场景,需要多个需求或者bug在同一台机器上复用的场景,需要新建一个测试分支,相关的需求和bug分支合并到测试分支,代码变更需要在原来的分支上修改,修改后在合并到测试分支,不允许直接在测试分支上修改代码。

3.代码发布

  • 预发布环境验证可以使用非主分支发布,如特性分支(Feature)和修复分支(Bugfix)。
  • 灰度和正式环境发布只允许使用主分支进行发布。
  • 主分支设置了提交保护,代码合并到主分支需要审核通过。

参考文献

语义化版本2.0.0

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/3 12:46:24

Arduino LED闪烁入门:从Tinkercad仿真到GPIO控制原理详解

1. 项目概述:从零开始的嵌入式世界第一课如果你对智能硬件、物联网或者机器人感兴趣,那么“让一个LED灯闪烁”几乎是你踏入这个世界的必经仪式。这听起来简单得甚至有些幼稚,但别小看它——这短短几行代码背后,串联起了微控制器编…

作者头像 李华
网站建设 2026/6/3 12:46:22

从齿轮电机到Rigifoam:手把手教你制作自动画圆机器人

1. 项目概述:一个能画圆的简易机器人作为一个喜欢动手鼓捣电子和机械的爱好者,我经常在思考如何将一些简单的物理原理和电子元件结合起来,创造出既有趣又有实用价值的小玩意儿。最近,我完成了一个特别有意思的项目——一个能自动画…

作者头像 李华
网站建设 2026/6/3 12:45:31

5个趣味电子电路入门:从晶体管、电容到LED闪烁与调光

1. 项目概述:从零开始的五个趣味电子电路如果你刚接触电子制作,面对一堆电阻、电容和晶体管感到无从下手,那么这五个小项目就是为你准备的。它们不是什么高深莫测的玩意儿,而是我多年来在带新人入门时,反复验证过的最有…

作者头像 李华
网站建设 2026/6/3 12:43:27

如何5分钟免费绕过iPhone激活锁:applera1n工具终极指南

如何5分钟免费绕过iPhone激活锁:applera1n工具终极指南 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否面对着一部被iCloud激活锁困住的iPhone,屏幕上显示着"此iPho…

作者头像 李华
网站建设 2026/6/3 12:40:41

OpenCode LSP集成架构:现代终端编程的智能语言服务器解决方案

OpenCode LSP集成架构:现代终端编程的智能语言服务器解决方案 【免费下载链接】opencode The open source coding agent. 项目地址: https://gitcode.com/GitHub_Trending/openc/opencode 在当今快速发展的软件开发环境中,终端编程体验与现代化ID…

作者头像 李华