Git 是现代软件开发中不可或缺的工具。用好 Git 不仅是会几条命令, 更重要的是建立一套清晰的工作流程。本文整理了一些实践中总结的经验。

分支策略

一个清晰的分支模型能让团队协作更加顺畅。以下是常用的分支类型:

  • main——生产环境代码,始终处于可部署状态
  • develop(可选)——集成分支,汇总各功能分支的改动
  • feature/xxx——功能开发分支,从 main 拉出,完成后合并回去
  • fix/xxx——Bug 修复分支
  • hotfix/xxx——紧急修复分支,直接从 main 拉出

对于小团队或个人项目,可以简化为主分支 + 功能分支的模式, 不需要额外的 develop 分支。

Commit 规范

规范的 commit message 让项目历史一目了然。推荐使用以下格式:

<type>(<scope>): <subject>

<body>

<footer>

常用的 type 类型:

  • feat——新功能
  • fix——Bug 修复
  • docs——文档更新
  • style——代码格式(不影响功能)
  • refactor——重构
  • test——测试相关
  • chore——构建、依赖等杂项

一个好的 commit message 示例:

feat(auth): add JWT token refresh mechanism

Automatically refresh access token 5 minutes before expiry
using the refresh token stored in httpOnly cookie.

Closes #42

代码审查

Code Review 是保证代码质量的重要环节。几个实用的建议:

  1. 每个 PR 尽量控制在 400 行以内,方便审查者理解
  2. PR 描述写清楚做了什么、为什么这么做、怎么测试
  3. 审查时关注逻辑正确性、安全性、可维护性,而不是代码风格
  4. 风格问题交给 ESLint 和 Prettier 自动处理
  5. 评论要具体、有建设性,避免主观评价

实用技巧

交互式 rebase 整理提交历史

git rebase -i HEAD~3  # 整理最近3个提交

暂存工作现场

git stash push -m "WIP: refactoring user module"
git stash pop  # 恢复最近一次暂存

查看某个文件的修改历史

git log -p -- path/to/file

撤销最后一次 commit(保留修改)

git reset --soft HEAD~1

好的 Git 习惯需要长期培养。与其记住所有命令,不如理解 Git 的数据模型—— 知道提交、分支、引用的本质是什么,遇到问题时才能对症下药。