Git分支命名规范总结
Git分支命名规范总结
在Git分支命名规范中,通常通过前缀明确区分需求(功能开发)和Bug修复,以下是具体规则及示例:
一、命名规范区分原则
-
需求分支(Feature)
-
前缀:
feature/或feat/ -
用途:用于开发新功能或需求,从开发分支(
develop)创建,完成后合并回develop。 -
命名示例
-
feature/user-login_20250212_JIRA-123 -
feature/20250212_SSO-implementation -
feat/payment-integration(功能描述 + 日期 + 任务ID,增强可追溯性)
-
-
-
Bug修复分支(Bugfix)
- 前缀:
bugfix/或fix/ - 用途:从
develop分支创建,修复后合并回develop。 - 命名示例
bugfix/login-error_20250212_JIRA-456fix/404-page-redirect
- 前缀:
-
热修复分支(Hotfix)
- 前缀:
hotfix/ - 用途:从
master分支创建,修复后需同时合并到master和develop。 - 命名示例
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
- 合并流程:
修复后需同步到master和develop:
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
四、注意事项
- 分支命名一致性:团队需统一前缀格式(如全小写、短横线分隔)。
- 关联任务追踪:建议在分支名中包含任务管理工具ID(如JIRA编号)。
- 及时清理分支:合并后删除临时分支,避免冗余。
- 紧急修复流程:
hotfix分支需严格测试,合并后立即打Tag标记版本。
浙公网安备 33010602011771号