Release 分支管理
Release 分支是 Git Flow 中的发布准备分支,用于版本发布前的准备工作。
什么是 Release 分支
Release 分支的作用:
- 集成测试和 QA 验证
- 版本号更新
- 发布文档准备
- 发布前 bug 修复
- 不干扰正常开发
Release 分支流程
Bash
develop ───●────●────●────●──→
│
release/1.2 ●────●────●────┐
│ │ │ │
测试 文档 修复 │
│
↓ merge
master ───────────────────●──●──→
tag v1.2
│
↓ merge back
develop ───────────────────●──→
创建 Release 分支
Bash
# 从 develop 创建
git checkout develop
git checkout -b release/v1.2.0
# 命名规范:release/<version>
Release 分支工作内容
版本号更新
Bash
# 更新版本号文件
# package.json, version.py, pom.xml
git add package.json
git commit -m "chore: 更新版本号至 v1.2.0"
发布文档
Bash
# 更新 CHANGELOG
# 更新 README
# 更新 API 文档
git add CHANGELOG.md
git commit -m "docs: 更新 CHANGELOG"
发布前修复
Bash
# 在 release 分支修复 bug
git add fix/
git commit -m "fix: 修复发布前发现的问题"
# 修复会合回 develop
完成 Release 分支
text
# 1. 合入 master
git checkout master
git merge --no-ff release/v1.2.0
# 2. 创建标签
git tag -a v1.2.0 -m "Release v1.2.0"
# 3. 合回 develop(包含修复)
git checkout develop
git merge --no-ff release/v1.2.0
# 4. 删除 release 分支
git branch -d release/v1.2.0
# 5. 推送标签
git push origin master
git push origin develop
git push origin v1.2.0
Release 分支禁止事项
text
❌ 禁止:
- 添加新功能
- 大范围重构
- 不稳定的变更
✅ 允许:
- bug 修复
- 文档更新
- 版本号更新
- 配置调整
Release 分支时机
text
何时创建 Release 分支:
- 功能开发基本完成
- 准备开始集成测试
- 发布日期确定
- 不再接受新功能
发布周期建议:
- 小版本:1-2 天
- 大版本:1-2 周
Release 分支与 Feature 分支
text
Feature 分支:
- 开发新功能
- 合入 develop
- 长期开发
Release 分支:
- 发布准备
- 合入 master 和 develop
- 短期存在
多版本并行发布
text
同时维护多个 release 分支:
release/v1.2.0 ──●────●──→ 合入 master → tag v1.2.0
release/v1.1.1 ──●────●──→ 合入 master → tag v1.1.1(hotfix)
适用场景:
- 多版本并行维护
- 不同客户使用不同版本
Release 分支检查清单
text
□ 版本号已更新
□ CHANGELOG 已更新
□ 所有测试通过
□ QA 验证完成
□ 文档已同步
□ 合入 master 并打 tag
□ 合回 develop
□ 推送所有变更
□ 删除 release 分支
Release 分支确保发布过程可控,不影响正常开发流程。
要点总结
- Release 分支从 develop 创建
- 只做发布准备,不添加新功能
- 完成后合入 master 和 develop
- master 打 tag 标记版本
- 合并后删除 release 分支
📝 发现内容有误?点击此处直接编辑