Files
mock-server/.claude/rules/git-branch-specification.md
2026-03-26 19:20:22 +08:00

76 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Git分支管理规范
## 分支类型
| 类型 | 分支名称 | 用途 | 特点 |
|------|----------|------|------|
| 主分支 | master | 正式版本代码归档 | 受保护,仅运维可合并 |
| 主分支 | develop | 日常开发主分支 | 团队开发基准 |
| 主分支 | doc | 文档、SQL脚本、配置 | 文档管理 |
| 辅助分支 | feature | 功能开发分支 | 临时性,合并后删除 |
| 辅助分支 | hotfix | Bug紧急修复 | 临时性,合并后删除 |
## 分支命名规则
### 功能分支
```
feature-{项目名}-{版本号}-SNAPSHOT-{日期}
```
示例:`feature-javadog-v2.1.1-SNAPSHOT-20240703`
### 个人分支
```
{功能分支}-{开发者姓名}
```
示例:`feature-javadog-v2.1.1-SNAPSHOT-20240703-zhangsan`
### 预生产分支
```
feature-{项目名}-{版本号}-{日期}
```
示例:`feature-javadog-v2.1.1-20240703`去除SNAPSHOT标识
### 热修复分支
```
hotfix-{项目名}-{版本号}-{日期}
```
示例:`hotfix-javadog-v2.1.2-20240705`
## 分支权限规则
1. master/develop/doc 分支受保护,仅运维可合并
2. 辅助分支为临时分支,合并后询问开发人员是否需要删除
## 开发流程规则
### 功能开发流程(五阶段)
| 阶段 | 操作 | 核心目的 |
|------|------|----------|
| 开发前 | 从develop拉取功能分支 | 保持团队起始点一致 |
| 开发中 | 组员从功能分支拉取个人临时分支 | 保证开发灵活性 |
| 提测中 | 个人分支合并到功能分支 | 流水线打包提测 |
| 预生产 | 从功能分支拉取预生产分支去SNAPSHOT标识 | 环境验证解耦 |
| 上线 | 蓝绿部署,分支合并 | 无缝切换,稳定上线 |
### 热修复流程
1. 从 master 拉取 hotfix 分支
2. 修复 Bug 后合并回 master 和 develop
3. 合并后删除 hotfix 分支
## 蓝绿部署策略
- 定义:同时运行两个生产环境,通过切换实现无缝发布
- 优势:新版本测试期间不影响线上环境
- 流程:蓝线发布新版本 -> 验证通过 -> 蓝绿切换 -> 负载均衡
## 命名示例汇总
| 分支类型 | 命名格式 | 示例 |
|---------|---------|------|
| 功能分支 | `feature-{项目}-{版本}-SNAPSHOT-{日期}` | `feature-javadog-v2.1.1-SNAPSHOT-20240703` |
| 个人分支 | `{功能分支}-{姓名}` | `feature-javadog-v2.1.1-SNAPSHOT-20240703-zhangsan` |
| 预生产分支 | `feature-{项目}-{版本}-{日期}` | `feature-javadog-v2.1.1-20240703` |
| 热修复分支 | `hotfix-{项目}-{版本}-{日期}` | `hotfix-javadog-v2.1.2-20240705` |