Git 工作流最佳实践:从 Feature Branch 到 GitFlow

版本控制是团队协作的基石。选择合适的 Git 工作流能大幅提升开发效率。

Feature Branch Workflow

最简单的协作工作流——每个功能在独立分支开发:

# 从 main 创建功能分支
git checkout -b feature/user-auth main

# 开发...
git add .
git commit -m "feat: add user authentication"

# 推送并创建 PR
git push origin feature/user-auth

优点

  • 简单易懂,适合小团队
  • 每个功能独立,互不干扰
  • PR review 自然融入流程

GitFlow

适合有明确发布周期的项目:

main ─────●────────────●────────────●────
           \          / \          /
develop ────●──●──●──●───●──●──●──●────
             \  /     \  /
feature/A ────●──●      │
                        │
release/1.0 ────────────●──●

分支类型

分支 用途 来源 合并到
main 生产环境 - -
develop 开发集成 main -
feature/* 功能开发 develop develop
release/* 发布准备 develop main + develop
hotfix/* 紧急修复 main main + develop

提交信息规范 (Conventional Commits)

<type>(<scope>): <description>

[optional body]

[optional footer]

Type 类型

Type 说明
feat 新功能
fix Bug 修复
docs 文档变更
style 代码格式
refactor 重构
perf 性能优化
test 测试
chore 构建/工具

示例

git commit -m "feat(auth): add JWT token refresh

Implement automatic token refresh 5 minutes before expiry.
Add TokenRefreshInterceptor to handle 401 responses.

Closes #123"

总结

选择工作流的原则:

  • 小团队(2-5人):Feature Branch + Trunk Based
  • 中型团队(5-20人):简化版 GitFlow
  • 大型项目需要多版本维护:完整 GitFlow
  • 不管哪种,保持提交信息的规范性和一致性是最重要的