[ PROMPT_NODE_25940 ]
Commit Work 说明文档
[ SKILL_DOCUMENTATION ]
# 提交工作
这是一个用于创建高质量、生产就绪的 Git 提交的综合技能,确保提交易于审查、安全且遵循最佳实践。
## 目的
此技能通过以下方式帮助你创建精心构思的 Git 提交:
- 确保仅包含预期的变更
- 将工作拆分为逻辑范围明确的提交
- 编写清晰、描述性的提交信息,解释变更内容及原因
- 遵循 Conventional Commits(约定式提交)格式
- 防止常见错误(泄露密钥、调试代码、无关变更)
## 何时使用
当你需要执行以下操作时使用此技能:
- 在适当的暂存和审查后提交工作
- 撰写有意义的提交信息
- 将混合的变更拆分为多个逻辑提交
- 遵循约定式提交格式
- 确保提交已准备好审查且可以安全合并
**触发短语:**
- "commit this work"
- "create a commit"
- "split these changes into commits"
- "help me commit"
- "write a commit message"
## 工作原理
该技能遵循严格的 8 步工作流:
1. **检查** - 使用 `git status` 和 `git diff` 查看工作区
2. **确定边界** - 确定变更是否应拆分为多个提交
3. **选择性暂存** - 使用补丁暂存 (`git add -p`) 进行细粒度控制
4. **审查暂存变更** - 使用 `git diff --cached` 进行验证
5. **描述变更** - 用 1-2 句话阐述变更内容及原因
6. **编写信息** - 撰写符合约定式提交格式的信息
7. **验证** - 在提交前运行相关的测试/检查
8. **重复** - 直到工作区干净为止
## 关键特性
### 智能提交拆分
自动识别何时拆分提交:
- 功能 vs 重构
- 后端 vs 前端
- 格式化 vs 逻辑
- 测试 vs 生产代码
- 依赖升级 vs 行为变更
### 约定式提交格式
所有提交遵循标准:
type(scope): short summary
Detailed body explaining what changed and why.
BREAKING CHANGE: if applicable
### 安全检查
审查暂存的变更以防:
- 密钥或令牌
- 意外的调试日志
- 无关的格式化变更
- 混合或范围过大的提交
### 补丁暂存
当单个文件内的变更需要拆分到不同提交时,使用 `git add -p` 进行细粒度控制。
## 使用示例
### 示例 1: 简单的单次提交
bash
# 用户询问: "commit this bugfix"
# 技能工作流:
git status
git diff
git add src/api/auth.js
git diff --cached
git commit -m "fix(auth): resolve token expiration edge case
Previously