Skip to content

12.3 Git 提交规范 ​

概述

统一的 Git 提交规范有助于代码审查、版本管理和自动化工具集成。

Commit Message 格式 ​

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

<body>

Type 类型 ​

type说明示例
feat新功能feat(user): 新增用户导入导出功能
fix修复 Bugfix(login): 修复验证码过期后仍可使用的问题
docs文档docs: 更新 API 接口文档
style代码格式(不影响功能)style: 统一代码缩进
refactor重构refactor(logic): 优化分页查询性能
perf性能优化perf(dict): 增加字典缓存减少数据库查询
test测试test: 添加用户模块单元测试
chore构建/工具chore: 更新 Composer 依赖

Scope 范围 ​

scope说明
user用户模块
role角色模块
menu菜单模块
dict字典模块
job定时任务
auth认证授权
upload文件上传
generator代码生成器
config配置
deploy部署

示例 ​

bash
# -----------------------------------------------------------------------------
# 新功能(feat)
# -----------------------------------------------------------------------------
# -m → 指定提交信息(单行简短描述)
git commit -m "feat(article): 新增文章管理模块"

# -----------------------------------------------------------------------------
# 修复 Bug(fix)
# -----------------------------------------------------------------------------
git commit -m "fix(login): 修复密码错误时未记录登录日志的问题"

# -----------------------------------------------------------------------------
# 文档更新(docs)
# -----------------------------------------------------------------------------
git commit -m "docs: 补充多数据库部署文档"

# -----------------------------------------------------------------------------
# 重构(refactor)
# -----------------------------------------------------------------------------
git commit -m "refactor(logic): 统一删除前校验逻辑"

# -----------------------------------------------------------------------------
# 性能优化(perf)
# -----------------------------------------------------------------------------
git commit -m "perf(dict): 增加请求级缓存减少重复查询"

注意事项 ​

禁止事项

  • 不要提交调试代码(console.log、dump、var_dump)
  • 不要提交敏感信息(密码、密钥、Token)
  • 不要提交 IDE 配置文件(.idea/、.vscode/)
  • 一个 commit 只做一件事

.gitignore ​

gitignore
# =============================================================================
# .gitignore — Git 版本控制忽略规则
# =============================================================================
# 匹配的文件不会被 git track(不会提交到仓库)
# =============================================================================

# -----------------------------------------------------------------------------
# 运行时目录(ThinkPHP 缓存、日志、编译模板 — 自动生成,无需版本控制)
# -----------------------------------------------------------------------------
runtime/
vendor/

# -----------------------------------------------------------------------------
# 环境配置(包含数据库密码等敏感信息 — 绝不能提交)
# -----------------------------------------------------------------------------
.env

# -----------------------------------------------------------------------------
# IDE 配置文件(每个开发者的 IDE 设置不同 — 不应互相影响)
# -----------------------------------------------------------------------------
.idea/
.vscode/

# -----------------------------------------------------------------------------
# 临时上传文件(用户上传的临时文件 — 不属于代码)
# -----------------------------------------------------------------------------
uploads/temp/

# -----------------------------------------------------------------------------
# 前端依赖(node_modules 体积庞大 — 通过 pnpm install 重新安装即可)
# -----------------------------------------------------------------------------
ui/node_modules/

小蚂蚁云团队 · 提供技术支持