commit-helper
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseCommit Message Helper
提交信息助手
A skill for creating properly formatted Git commit messages following the Conventional Commits specification.
一款帮助遵循Conventional Commits规范创建格式正确的Git提交信息的技能。
When This Skill Activates
技能触发场景
This skill activates when you:
- Ask to commit changes
- Mention commit messages
- Request git commit formatting
- Say "commit" or "git commit"
当你进行以下操作时,该技能会触发:
- 请求提交更改
- 提及提交信息
- 要求格式化Git提交内容
- 说出"commit"或"git commit"
Commit Message Format
提交信息格式
<type>(<scope>): <subject>
<body>
<footer><type>(<scope>): <subject>
<body>
<footer>Types
类型
| Type | Description |
|---|---|
| A new feature |
| A bug fix |
| Documentation only changes |
| Changes that do not affect the meaning of the code (formatting, etc.) |
| A code change that neither fixes a bug nor adds a feature |
| A code change that improves performance |
| Adding missing tests or correcting existing tests |
| Changes to the build process or auxiliary tools |
| Changes to CI configuration files and scripts |
| Changes that affect the build system or external dependencies |
| 类型 | 描述 |
|---|---|
| 新增功能 |
| 修复Bug |
| 仅修改文档 |
| 不影响代码含义的修改(如格式化等) |
| 既不是修复Bug也不是新增功能的代码变更 |
| 提升性能的代码变更 |
| 添加缺失的测试或修正现有测试 |
| 对构建流程或辅助工具的修改 |
| 对CI配置文件和脚本的修改 |
| 影响构建系统或外部依赖的修改 |
Scope
范围
The scope should indicate the area of the codebase affected:
- For frontend: ,
components,hooks,store,stylesutils - For backend: ,
api,models,services,databaseauth - For devops: ,
ci,deploydocker - Project-specific scopes are also acceptable
范围应指明受影响的代码库区域:
- 前端:、
components、hooks、store、stylesutils - 后端:、
api、models、services、databaseauth - DevOps:、
ci、deploydocker - 也可使用项目特定的范围
Guidelines
编写指南
Subject Line
主题行
- Use imperative mood ("add feature" not "added feature" or "adds feature")
- No period at the end
- Maximum 50 characters
- Be specific and concise
- 使用祈使语气(如"add feature"而非"added feature"或"adds feature")
- 结尾不加句号
- 最多50个字符
- 表述具体且简洁
Body
正文
- Separate subject from body with a blank line
- Use the body to explain what and why, not how
- Wrap at 72 characters per line
- Mention any breaking changes
- 主题与正文之间用空行分隔
- 用正文解释做了什么和为什么这么做,而非怎么做
- 每行最多72个字符
- 提及所有破坏性变更
Footer
页脚
- Reference issues: ,
Closes #123,Fixes #456Refs #789 - Multiple issues:
Closes #123, #456, #789 - Breaking changes: Start with followed by description
BREAKING CHANGE:
- 关联议题:、
Closes #123、Fixes #456Refs #789 - 多个议题:
Closes #123, #456, #789 - 破坏性变更:以开头,后跟描述内容
BREAKING CHANGE:
Examples
示例
Good Examples
优秀示例
feat(auth): add OAuth2 login support
Implement OAuth2 authentication flow to allow users to log in
with their Google or GitHub accounts.
This change adds:
- New OAuth2 middleware for handling callbacks
- Updated login UI with social login buttons
- User profile synchronization
Closes #123fix(api): resolve race condition in user creation
The concurrent user creation requests could result in duplicate
email entries. Added unique constraint and proper error handling.
Fixes #456refactor(user): simplify profile update logic
Extracted common validation logic into a reusable function
to reduce code duplication across profile update endpoints.docs: update API documentation with new endpoints
Added documentation for the v2 user management endpoints
including request/response examples and error codes.feat(auth): add OAuth2 login support
Implement OAuth2 authentication flow to allow users to log in
with their Google or GitHub accounts.
This change adds:
- New OAuth2 middleware for handling callbacks
- Updated login UI with social login buttons
- User profile synchronization
Closes #123fix(api): resolve race condition in user creation
The concurrent user creation requests could result in duplicate
email entries. Added unique constraint and proper error handling.
Fixes #456refactor(user): simplify profile update logic
Extracted common validation logic into a reusable function
to reduce code duplication across profile update endpoints.docs: update API documentation with new endpoints
Added documentation for the v2 user management endpoints
including request/response examples and error codes.Bad Examples
反面示例
updated stuff # Too vague, no type/scope
fixed bug # No context about which bug
feat: added feature # Redundant ("feat" means new feature)
Feat(User): Add Login # Incorrect capitalization
feat: A really really really long subject line that exceeds the recommended limit # Too longupdated stuff # 过于模糊,无类型/范围
fixed bug # 未说明具体修复的Bug
feat: added feature # 冗余("feat"本身就代表新增功能)
Feat(User): Add Login # 大小写错误
feat: A really really really long subject line that exceeds the recommended limit # 过长Breaking Changes
破坏性变更
When introducing breaking changes, add to the footer:
BREAKING CHANGE:feat(api): migrate to REST v2
The API endpoints have been restructured for better consistency.
Old endpoints are deprecated and will be removed in v3.0.
BREAKING CHANGE: `/api/v1/users` is now `/api/v2/users`.
All consumers must update their integration by 2025-03-01.当引入破坏性变更时,需在页脚添加:
BREAKING CHANGE:feat(api): migrate to REST v2
The API endpoints have been restructured for better consistency.
Old endpoints are deprecated and will be removed in v3.0.
BREAKING CHANGE: `/api/v1/users` is now `/api/v2/users`.
All consumers must update their integration by 2025-03-01.Workflow
工作流程
When writing a commit message:
- Review changes - Run to understand what changed
git diff - Identify type - Determine the type of change
- Identify scope - Determine which area is affected
- Write subject - Create a clear, concise subject line
- Write body - Explain what and why (if needed)
- Add footer - Reference issues or note breaking changes
编写提交信息时,请遵循以下步骤:
- 查看变更内容 - 运行了解具体变更
git diff - 确定类型 - 判断变更的类型
- 确定范围 - 明确受影响的区域
- 编写主题 - 创建清晰、简洁的主题行
- 编写正文 - 解释做了什么和为什么这么做(如有需要)
- 添加页脚 - 关联议题或标注破坏性变更
Validation
验证
Use the validation script to check commit message format:
bash
python scripts/validate_commit.py "your commit message"使用验证脚本检查提交信息格式:
bash
python scripts/validate_commit.py "your commit message"Reference Documents
参考文档
- See for full specification
references/conventional-commits.md - See for more examples
references/examples.md - See for recommended scope naming
references/scopes.md
- 查看获取完整规范
references/conventional-commits.md - 查看获取更多示例
references/examples.md - 查看获取推荐的范围命名方式
references/scopes.md