一行命令把“改了一堆又说不清干了啥”的代码,变成可审查、可回滚、可 bisect 的专业提交记录
Title: 一行命令把“改了一堆又说不清干了啥”的代码,变成可审查、可回滚、可 bisect 的专业提交记录
Slug: conventional-commit-batcher
你是不是也经历过这些场景?
- 改着改着,发现同时动了登录逻辑(bug 修复)、删了三处重复代码(重构)、顺手更新了 README(文档)……最后
git commit -m "fix stuff"一气呵成 ✅ - Code Review 时,同事盯着你那个
wip提交皱眉:“这到底是修 bug 还是改接口?能单独 revert 吗?” - 某天线上出问题,想用
git bisect定位,结果卡在第 3 个提交——因为一个提交里混着“加日志”、“删 console”、“修 typo”,根本没法判断哪部分引入了问题。
👉 conventional-commit-batcher 就是专治这种“提交混乱症”的轻量级开发者工具。它不强制你学新流程,也不塞一堆配置;而是用三个小动作,帮你把「一团乱麻的改动」自动理成「清晰、合规、可追溯」的提交序列:
✅ 它只做三件事,但每件都直击痛点:
- 先「想清楚再动手」→ 自动生成「提交计划」
扫描你当前未提交的改动(git status),按「意图」智能分组: - 哪些是
refactor(重构)?比如src/auth/下的函数重命名 - 哪些是
fix(修复)?比如src/api/中空响应的兜底逻辑 -
哪些是
docs(文档)?比如docs/setup.md的新增说明
→ 输出一个带编号、带文件路径、带 Conventional Commit 格式建议的清单,就像你的提交导航图。 -
再「一批一批加」→ 引导你精准
git add -p
不再git add .一把梭哈。它会提示:“接下来该处理第 1 条:refactor(auth): ...,建议只选src/auth/相关的 hunk”,让你真正实现「一次只提交一类意图」。 -
最后「卡住错误格式」→ 提交前自动校验消息
如果你手滑写了git commit -m "update auth logic",它会立刻拦住你:
❌ 错误:不符合 Conventional Commits 规范(缺少 type(scope) 前缀)
✅ 正确示例:refactor(auth): simplify token parsing
(还支持自定义规则:比如禁止提交含console.log、TODO:、// FIXME的代码)
🧪 看看真实效果(同一堆改动,前后对比)
Before(典型混乱提交)
commit abc123
Message: "fix and update"
commit def456
Message: "wip, need to test"
commit ghi789
Message: "cleanup"
After(用 batcher 处理后)
1) refactor(auth): simplify token parsing
→ changes: src/auth/*
2) fix(api): handle empty response safely
→ changes: src/api/*
3) docs: update setup notes
→ changes: docs/*
→ 三条独立提交,类型明确、范围清晰、语义完整。Review、revert、bisect 全部丝滑。
⚙️ 怎么快速上手?(零配置起步)
如果你用 Vercel Skills 生态(推荐新手):
npx skills add cnkang/conventional-commit-batcher
运行后,它会自动分析当前分支,输出上面那种带编号的 Commit Plan 👇
不想装任何 agent?也没问题!
项目里直接提供了开箱即用的 Git 提交信息校验钩子(commit-msg hook),复制粘贴就能用:
# 进入你的项目根目录
cp node_modules/conventional-commit-batcher/hooks/commit-msg .git/hooks/
chmod +x .git/hooks/commit-msg
之后每次 git commit,都会自动检查格式是否合规(比如是否漏了 type(scope):)。
💡 它不是“教条工具”,而是“成长型搭档”
- 对新人:用「Plan-first」降低认知负担——不用自己想“该拆几个提交”,工具先给你列好清单;
- 对团队:统一
type(如feat/fix/chore)和scope(如(auth)/(api))让历史一目了然; - 对老手:可关闭校验、只用 Plan 功能;或扩展安全检查(比如禁止提交
.env文件)。
它的作者说得很实在:
“我不想搞一套新仪式感,只想让好习惯变得比偷懒还容易一点。”