用途:按 conventionalcommits.org 规范生成和校验提交信息,适用于用户要提交代码或提到 commit 的场景。
主要能力:支持格式 <type>(<scope>): <subject>,类型包括 feat、fix、docs、style、refactor、test、chore、perf、ci、build、revert。规则要求 subject 简短、祈使语气、小写、结尾无句号;scope 可选且小写;破坏性变更在类型/范围后加 !,并在 footer 写 BREAKING CHANGE:;footer 也可引用 issue,如 Closes #123。
使用方式:生成提交时先运行 git status 查看变更文件,再运行 git diff --staged 查看暂存变更,分析后确定类型、范围和主题,创建信息并运行 git commit -m "<message>"。校验时解析提交信息,检查格式、类型是否在允许列表、subject 是否符合规则并标记问题。用户说 commit 或 git commit 时从 diff 生成并提交;说 validate commit 或粘贴信息时进行校验。自动提交流程会先展示信息并请求确认,除非用户明确说 just do it,确认后执行并显示结果。
限制与错误处理:无暂存变更时提示无可提交内容;git 未初始化时初始化仓库或警告;提交失败时显示错误并询问是否重试。