Git Batch Commit
v1.3.0智能工具根据已暂存文件类型自动分类并生成多条逻辑清晰的 Git 提交,保持标准化和聚焦的提交历史。
运行时依赖
版本
如果一次修改涉及多个模块,必须按模块分别提交
安装命令
点击复制技能文档
Git 批量提交工具 概述
将混合的修改自动拆分为多个聚焦的、逻辑清晰的提交。而不是创建一个包含"更新各种文件"的大提交,而是创建多个清晰的提交,如"docs: 更新 README"、"chore: 更新依赖"、"license: 更新 license 文件"。
使用场景 用户暂存的文件来自多个类别(文档 + 代码 + 配置) 用户希望保持清晰、标准化的提交历史 用户提到"批量提交"、"拆分提交"或"整理提交" 用户修改了许多文件,希望按逻辑分组 快速开始 方式一:使用交互式脚本 # 首先暂存你的文件 git 添加 file1.py file2.md package.json
# 运行交互式批量提交工具(需要确认) python3 技能s/git-batch-commit/scripts/interactive_commit.py
# 或使用 --yes 参数自动确认(适用于非交互式环境) python3 技能s/git-batch-commit/scripts/interactive_commit.py --yes
# 使用 --dry-运行 仅查看分组,不实际提交 python3 技能s/git-batch-commit/scripts/interactive_commit.py --dry-运行
命令行参数:
--yes, -y:跳过交互式确认,自动创建提交 --dry-运行:仅显示分组建议,不实际创建提交 方式二:手动分类 python3 技能s/git-batch-commit/scripts/categorize_changes.py python3 技能s/git-batch-commit/scripts/categorize_changes.py --json
提交分类
支持类型:docs, feat, fix, refactor, style, chore, license, config, test
完整定义和检测逻辑详见 references/commit-types.md
技能核心文件的特殊处理
重要规则:技能.md 虽然是 Markdown 格式,但它是技能的核心功能文件,不应归类为 docs 类型。
文件类型 正确分类 理由 技能.md feat/style/fix 技能核心文件,修改它相当于修改功能/代码 代理S.md docs 项目协作规范,属于文档 DECISIONS.md docs 决策记录,属于文档 CHANGE记录.md docs 变更日志,属于文档 TASKS.md docs 任务列表,属于文档
判断依据:
如果修改的是定义行为/功能的文件(如 技能.md、.py、.ts),视为代码变更 如果修改的是记录/说明性质的文件(如 README.md、CHANGE记录.md),视为文档变更 提交信息格式
所有提交遵循格式:
<类型>: <标题>
<正文描述>
重要规则:每个提交必须包含正文(body),不能只有标题。 正文用于补充变更的具体内容和原因,方便后续追溯。
使用英文前缀加中文内容,确保 GitHub 能识别并显示彩色标签。完整示例见 references/conventional-commits.md
Multi-模块/Multi-技能 仓库规则:
描述中应包含模块名称:docs: course-生成器 更新 CHANGE记录 如果一次修改涉及多个模块,必须按模块分别提交 描述中的模块名称使用原始英文名称,不要翻译 工作流程 暂存文件 - 使用 git 添加 正常暂存 运行交互式脚本 - 查看分类结果 审核 - 检查提议的提交分组 确认 - 创建提交或取消以调整 ClawHub 同步检查 - 仅当 技能s/ClawHub-同步/ 存在时执行,详见 references/ClawHub-同步-检查.md。不存在则静默跳过 Subtree 推送检查 - 仅当 技能s/subtree-publish/config/subtree-技能s.json 存在时执行,详见 references/subtree-push-检查.md。不存在则静默跳过 完成 - 获得清晰历史的聚焦提交 资源文件 scripts/ categorize_changes.py - 分析 git diff 并按类别分组文件 生成_commit_message.py - 生成约定式提交信息 interactive_commit.py - 批量提交的主交互式工具 references/ commit-types.md - 详细的类别定义和检测逻辑 conventional-commits.md - 提交信息规范 issue-pr-格式化.md - Issue 与 PR 命名规范 ClawHub-同步-检查.md - ClawHub 同步检查详细流程(工作流第5步) subtree-push-检查.md - Subtree 推送检查详细流程(工作流第6步)