Skip to content

GitHub 提交规范

提交信息格式

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

<body>

<footer>

类型 (Type)

  • feat: 新功能
  • fix: 修复bug
  • docs: 文档更新
  • style: 代码格式调整(不影响代码运行)
  • refactor: 代码重构
  • perf: 性能优化
  • test: 测试相关
  • chore: 构建过程或辅助工具的变动
  • ci: CI/CD相关更改
  • build: 构建系统或外部依赖更改

作用域 (Scope)

可选,用于说明提交影响的范围,例如:

  • api: API相关
  • ui: 用户界面
  • auth: 认证相关
  • db: 数据库相关
  • config: 配置文件

主题 (Subject)

  • 使用祈使句,以动词开头
  • 首字母小写
  • 结尾不加句号
  • 不超过50个字符

正文 (Body)

  • 可选,用于详细描述提交内容
  • 使用祈使句
  • 说明提交的动机和与之前行为的对比
  • 可选,用于关闭Issue或描述破坏性变更
  • 格式:Closes #123BREAKING CHANGE: 描述

示例

新功能

feat(auth): 添加用户登录功能

- 实现用户名密码登录
- 添加JWT token验证
- 集成第三方OAuth登录

Closes #123

修复bug

fix(api): 修复用户列表分页问题

修复了当页码大于总页数时返回空数据的问题

文档更新

docs: 更新API文档

更新了用户管理相关的API接口文档

代码重构

refactor(ui): 重构用户界面组件

将用户信息展示组件拆分为更小的可复用组件

性能优化

perf(db): 优化数据库查询性能

- 添加索引优化用户查询
- 使用连接池减少连接开销

最佳实践

  1. 保持一致性: 团队内使用统一的提交规范
  2. 简洁明了: 提交信息要清晰表达变更内容
  3. 原子性: 每次提交只做一件事
  4. 及时提交: 避免大量代码一次性提交
  5. 使用工具: 可以使用commitizen等工具规范提交

常用工具

Commitizen

bash
npm install -g commitizen
npm install -g cz-conventional-changelog

Husky + lint-staged

bash
npm install husky lint-staged --save-dev

Git Hooks

bash
# 在.git/hooks/commit-msg中添加验证脚本

自动化

可以通过Git hooks或CI/CD工具自动验证提交信息格式,确保团队遵循统一的提交规范。

结语

本文档由AI自动生成,仅供参考和学习使用。如有错误或建议,欢迎反馈指正。