三种主流工作流对比
| 维度 | Git Flow | GitHub Flow | Trunk-Based |
| 分支数量 | 多(main/develop/feature/release/hotfix) | 少(main + feature) | 极简(trunk + short-lived) |
| 适用场景 | 有固定发布周期的项目 | 持续部署的 SaaS 产品 | 成熟 CI/CD、大型团队 |
| 合并方式 | merge / merge --no-ff | PR → squash merge | rebase → fast-forward |
| 发布管理 | release 分支 + tag | tag + CI 触发 | release branch / tag |
| 学习成本 | ⭐⭐⭐ 中高 | ⭐ 低 | ⭐⭐ 中 |
GitHub Flow 实战流程
# 1. 从 main 拉取最新代码
git checkout main
git pull origin main
# 2. 创建功能分支
git checkout -b feat/user-login
# 3. 开发 + 频繁提交
git add -A && git commit -m "feat: add login form component"
# 4. 推送到远程(可选:定期推送保底)
git push -u origin feat/user-login
# 5. 发起 Pull Request → Code Review → 合并
# 6. 清理本地分支
git checkout main
git pull origin main
git branch -d feat/user-login
Commit Message 规范
# 推荐 Angular 规范
<type>(<scope>): <subject>
feat(auth): 添加 JWT 鉴权中间件
fix(api): 修复分页参数校验错误
docs(readme): 更新部署文档
refactor(db): 重构连接池初始化逻辑
test(auth): 增加登录模块单元测试
chore(deps): 升级 Vue 到 3.4
💡 小团队建议:3-5 人团队用 GitHub Flow,按功能分支开发 + PR Review 即可,无需引入 Git Flow 的复杂度。