commit-push 的用途是:提交全部本地改动并按 Conventional Commits 格式书写提交信息,然后推送到远程仓库。
主要能力:它把流程拆成若干关卡,须按顺序完成,前一步通过后再进行下一步,且以命令输出为证据而非凭记忆判断。关卡包括:理解 diff(git status、git diff、git diff --cached 输出与一句变更描述一致,或记录无可提交内容);确定提交首行(草稿形如 type(scope): description,省略 scope 时为 type: description);暂存与意图一致(git add 后用 git diff --cached --stat 复核,必要时抽查 git diff --cached);确认推送目标(用 git branch -vv、git remote -v 核对分支与远程);推送后远程已同步(git status 干净,git status -sb 显示与配置的上游一致,无意外未推送提交)。
用法:先并行运行 git status、git diff、git diff --cached、git log --oneline -10 收集上下文;再分析变更类型(feat、fix、docs、refactor、test、chore、perf、ci)、范围,以及是否破坏向后兼容(若破坏在 scope 后加 !);随后写提交信息:首行 type(scope): description,正文说明原因而非内容,可加脚注引用 issue,如 Closes #123。提交信息用祈使语气,首行不超过 72 字符,多行可用 HEREDOC。之后 git add -A(或选择性 add),用 git diff --cached --stat 确认暂存集,再 git commit 与 git push。示例包括简单功能、带正文的修复、含 BREAKING CHANGE 的破坏性变更;如项目约定需要,可追加 Co-Authored-By 等 footer,无约定则省略。推送后运行 git status 与 git status -sb 验证。
适用场景:需要规范化提交并推送的日常开发流程。限制:资料未提供具体的自动执行方式、依赖环境或与其他工具的集成说明;须遵守所列关卡顺序。