Git分支命名规范总结

在Git分支命名规范中,通常通过前缀明确区分需求(功能开发)和Bug修复,以下是具体规则及示例:

一、命名规范区分原则

  1. 需求分支(Feature)

    • 前缀feature/feat/

    • 用途:用于开发新功能或需求,从开发分支(develop)创建,完成后合并回develop

    • 命名示例

      • feature/user-login_20250212_JIRA-123

      • feature/20250212_SSO-implementation

      • feat/payment-integration

        (功能描述 + 日期 + 任务ID,增强可追溯性)

  2. Bug修复分支(Bugfix)

    • 前缀:bugfix/fix/
    • 用途:develop分支创建,修复后合并回develop
    • 命名示例
      • bugfix/login-error_20250212_JIRA-456
      • fix/404-page-redirect
  3. 热修复分支(Hotfix)

    • 前缀:hotfix/
    • 用途:master分支创建,修复后需同时合并到masterdevelop
    • 命名示例
      • hotfix/security-patch_20250212

二、核心区别

分支类型 前缀 创建来源 合并目标 场景
需求分支 feature/ develop develop 新功能开发
Bug修复分支 bugfix/ develop develop 普通Bug修复
热修复分支 hotfix/ master master + develop 生产环境紧急修复

三、Demo案例

1. 需求分支示例

  • 场景:开发用户登录功能,任务关联JIRA编号JIRA-123
  # 从develop分支创建需求分支
git checkout -b feature/user-login_20250212_JIRA-123 develop
  • 合并流程

    开发完成后,将分支合并到develop并删除:
  git checkout develop
git merge --no-ff feature/user-login_20250212_JIRA-123
git branch -d feature/user-login_20250212_JIRA-123

(通过--no-ff保留合并记录)

2. Bug修复分支示例

  • 场景:修复登录页面的500错误,任务关联JIRA编号JIRA-456
  # 从develop分支创建修复分支
git checkout -b bugfix/login-500_20250212_JIRA-456 develop
  • 合并流程

    修复完成后,合并到develop
  git checkout develop
git merge --no-ff bugfix/login-500_20250212_JIRA-456
git branch -d bugfix/login-500_20250212_JIRA-456

3. 热修复分支示例

  • 场景:生产环境出现支付接口超时问题,需紧急修复。
  # 从master分支创建热修复分支
git checkout -b hotfix/payment-timeout_20250212 master
  • 合并流程

    修复后需同步到masterdevelop
  git checkout master
git merge --no-ff hotfix/payment-timeout_20250212
git tag v1.2.1 # 打版本标签
git checkout develop
git merge --no-ff hotfix/payment-timeout_20250212
git branch -d hotfix/payment-timeout_20250212

四、注意事项

  1. 分支命名一致性:团队需统一前缀格式(如全小写、短横线分隔)。
  2. 关联任务追踪:建议在分支名中包含任务管理工具ID(如JIRA编号)。
  3. 及时清理分支:合并后删除临时分支,避免冗余。
  4. 紧急修复流程hotfix分支需严格测试,合并后立即打Tag标记版本。

Git分支命名规范总结的更多相关文章

  1. git 分支命名规范

    为规范开发,保持代码提交记录以及 git 分支结构清晰,方便后续维护,现规范 git 的相关操作. 主要规范两点: git 分支命名规范 git 提交记录规范 1. git 分支命名规范 git 分支 ...

  2. 前端项目git操作命名规范和协作开发流程

    前言 一个项目的分支,一般包括主干 master 和 开发分支 dev,以及若干临时分支 分支命名规范 分支: 命名: 说明: 主分支 master 主分支,所有提供给用户使用的正式版本,都在这个主分 ...

  3. 团队项目的Git分支管理规范

    原文地址: http://blog.jboost.cn/2019/06/17/git-branch.html 许多公司的开发团队都采用Git来做代码版本控制.如何有效地协同开发人员之间,以及开发.测试 ...

  4. Git 分支开发规范

    您必须知道的 Git 分支开发规范 Git 是目前最流行的源代码管理工具. 为规范开发,保持代码提交记录以及 git 分支结构清晰,方便后续维护,现规范 git 的相关操作. 分支管理 分支命名 ma ...

  5. 您必须知道的 Git 分支开发规范

    Git 是目前最流行的源代码管理工具. 为规范开发,保持代码提交记录以及 git 分支结构清晰,方便后续维护,现规范 git 的相关操作. 分支管理 分支命名 master 分支 master 为主分 ...

  6. Git分支管理规范

    关于Git的一些分支管理规范... 一.分支与角色说明 Git 分支类型 master 分支(主分支) 稳定版本 develop 分支(开发分支) 最新版本 release 分支(发布分支) 发布新版 ...

  7. 后端必备的 Git 分支开发规范指南 转

    原文链接 作者:稻草叔叔 http://juejin.im/post/5b4328bbf265da0fa21a6820 点击上方 "后端技术精选",选择 "置顶公众号&q ...

  8. git 分支管理规范

    保证master分支永远处于可部署的状态.禁止自接提交代码到master分支 开发分支基于master分支创建,命名规范如下: 如果是功能需求,分支命名为feature/xxx,xxx要具有描述性 如 ...

  9. 【转】团队项目的Git分支管理规范

    原文地址: http://blog.jboost.cn/git-branch.html 分支管理 创建项目时(一般是服务型项目,工具型或辅助型项目可以简单一些),会针对不同环境创建三个常设分支: de ...

  10. 项目开发中git常用命令、git工作流、git分支模型

    #新建代码库git init # 在当前目录新建一个Git代码库git init [project-name] # 新建一个目录,将其初始化为Git代码库git clone [url] # 下载一个项 ...

随机推荐

  1. x86平台SIMD编程入门(4):整型指令

    1.算术指令 算术类型 函数示例 加 _mm_add_epi32._mm256_sub_epi16 减 _mm_sub_epi32._mm256_sub_epi16 乘 _mm_mul_epi32._ ...

  2. Mysql身份认证过程

    背景 最近有一些hersql的用户希望能支持mysql的caching_sha2_password认证方式,caching_sha2_password与常用的mysql_native_password ...

  3. 15个Linux Grep命令使用实例(实用、常用)

    Grep命令主要用于从文件中查找指定的字符串.首先建一个demo_file: 复制代码 代码如下: $ cat demo_fileTHIS LINE IS THE 1ST UPPER CASE LIN ...

  4. biancheng-linux-shell

    参考http://c.biancheng.net/view/706.html Shell变量:Shell变量的定义.赋值和删除 Shell 支持以下三种定义变量的方式: variable=valuev ...

  5. appExtend.js

    appextend.js是自己编写的一个手机网页过渡时显示loading的一个js插件. appextend.js : var appExtend = function () { this.setHi ...

  6. springboot环境下的rokectMQ多数据源实现

    业务原因,需要在一个项目中与多方MQ进行业务通信: 步骤一,复制一份RocketMQProperties配置文件,避免与原来的冲突 package com.heit.road.web.config; ...

  7. 一些devops、软件工程的个人感悟

    1.devops不是简单的工具,是思想. (1)devops核心在于快速编译构建.自动测试化.自动部署发布 (2)工具只是辅助手段,无论是Jenkins.腾讯蓝盾等等,甚至是手动bat+bash搭建, ...

  8. 创建多线程的方式二:实现Runnable接口

      /** * 创建多线程的方式二:实现Runnable接口 * 1. 创建一个实现了Runnable接口的类 * 2. 实现类去实现Runnable中的抽象方法:run() * 3. 创建实现类的对 ...

  9. C# Dev GridView当前行

    DEV获取GridControl当前行 //直接通过gridView获取当前行 dr=this.gridView1.GetDataRow(this.gridView1.FocusedRowHandle ...

  10. MySql执行Sql语句时出现“MySqlException: Parameter ‘@maxNo‘ must be defined.”的错误

    1.问题描述 具体执行的SQL和报错的信息如下图所示: 2.解决办法 连接字符串中增加Allow User Variables=True;的配置即可,如下所示: Server=192.168.2.1; ...