用途:当用户要求提交已暂存的改动、生成规范提交信息,或安全地提交已暂存文件时使用。它只提交已通过 git add 暂存的内容;若没有暂存文件,会提示改用 /commit-all 或先暂存。
主要能力:先用 git status 和 git diff --cached --stat 查看暂存内容,再用 git diff --cached 分析改动,判断变更类型(feat、fix、docs、style、refactor、test、chore、perf、ci、build、revert 等),并检查是否有破坏性变更。随后生成符合 Conventional Commits 的提交信息:主题行不超过 72 字符,采用祈使语气,正文说明改了什么和为什么,可用 #123 引用议题,破坏性变更用 BREAKING CHANGE: 标注。
使用方式:按技能内置步骤执行,提交命令为 git commit -m "$(cat <<'EOF' … EOF )";完成后用 git log -1 和 git status 验证,再执行 git push。若推送被拒绝,技能要求遵循“合并冲突处理协议”:始终用 git pull --no-rebase(必要时 git -c pull.rebase=false pull),禁止 rebase;无冲突时用 git diff HEAD~1 HEAD、git log --oneline -5 核对后推送;出现冲突时先用 git log --oneline HEAD...MERGE_HEAD、git diff --diff-filter=U、git checkout --conflict=diff3 <file> 弄清双方意图,再把冲突分类为叠加、并行修改、语义冲突、删除/修改冲突、重复/被取代五类后处理,完成前不得残留冲突标记,并运行项目语法/类型检查(示例 npx tsc --noEmit),确认双方改动均在后再提交。
限制:只提交已暂存文件;提交因钩子失败时应修复后创建新提交,不要 amend;不主动添加代理共同作者尾注;损坏性操作或语义冲突需向用户确认,不得静默丢弃代码。资料未提供收费、平台支持和具体版本信息。