Git 是现代软件开发的基石,但「会用 Git」和「用好 Git」之间差距很大。选择合适的工作流,能显著提升团队协作效率和代码质量。
常见工作流对比
GitHub Flow
适合持续部署的 Web 项目。流程简单:从 main 创建分支 → 提交 PR → Code Review → 合并 → 自动部署。
- 优点:简单直观,适合小团队
- 缺点:main 分支始终处于可部署状态,需要严格的 CI 保障
Git Flow
由 Vincent Driessen 提出,包含 main、develop、feature、release、hotfix 五条分支线。
- 优点:适合有明确发布周期的项目
- 缺点:分支管理复杂,对小团队来说过于重量级
Trunk-Based Development
所有开发者直接向主干(trunk/main)提交短生命周期的分支,强调小步快跑。
- 优点:减少合并冲突,加速集成
- 缺点:需要强大的自动化测试和 Feature Flag 支持
提交信息规范
清晰的提交信息是项目历史的重要资产。推荐使用 Conventional Commits 规范:
feat: 添加用户登录功能
fix: 修复分页组件页码计算错误
docs: 更新 API 文档
refactor: 重构订单服务模块
test: 补充支付流程单元测试
chore: 升级依赖版本
分支命名约定
feature/user-auth— 新功能fix/login-redirect— Bug 修复refactor/order-service— 重构docs/api-guide— 文档更新
「好的 Git 历史就像一本清晰的项目日记——每个提交都讲述了一个完整的小故事。」
实用技巧
- 频繁提交,每个 commit 只做一件事
- 合并前使用
git rebase -i整理提交历史 - 配置
.gitignore避免提交无关文件 - 使用 Git Hooks 在提交前自动运行 lint 和测试
- 保护 main 分支,禁止直接 push,强制 PR Review