用途:作为 Git 提交的统一入口,默认采用自动模式。当用户说「提交代码」「git commit」「帮我提交」「写 commit message」「生成 commit」「提交一下」「git-commit」「自动提交代码」「git-commit-auto」等时触发。
模式判断:调用方传入 execute=true 或由 jira-fix-workflow 第 7 阶段触发时为自动模式;用户明确说「手动提交」「只生成命令」「不要执行」「给我命令」时为手动模式;其他或不明确情况默认自动模式。
主要能力:收集提交信息字段(type、scope、subject、jira_id);检测多项目(扫描工作区根目录一、二级子目录,以存在 .git 目录识别,排除 node_modules、.cursor、dist、build、.git 及隐藏目录,并用 git status 验证);生成提交信息,格式为 <type>(<scope>): <Jira-ID> <subject>,subject 不超过 50 字符,无 scope 时省略括号,仅含标题行;执行 Git 操作。
使用方式:自动模式按顺序执行 git status、受保护分支检查、git add .、git commit -m "..."、git log -1 --stat、git push -u origin [branch-name],并输出各命令结果;手动模式只生成命令不执行,提示用户自行运行。多项目时每个项目独立执行,最后输出汇总表。
适用场景:需要规范化提交信息、批量处理多项目提交、或希望自动完成 add/commit/push 流程的 Git 工作流。
限制与安全:提交到 main/master/develop 等受保护分支会警告;变更超过 10 文件/500 行会警告,超过 20 文件/1000 行再次警告(不阻断);无未提交变更、分支不存在、Git 操作失败、不在 Git 仓库、多项目检测失败等均有对应处理;单个项目失败不影响其他项目。