SuperAPI AI 工具集

changelog-generator

编程与开发

查看项目

更新于 10-15 21:39

技能介绍

用途:解析项目 Git 历史,按 Keep a Changelog 规范生成或更新 CHANGELOG.md,面向人类读者呈现版本间有意义的变更。

主要能力:检测提交约定(Conventional Commits、基础前缀或自由格式)与版本方案(SemVer、CalVer 等);按 Added、Changed、Deprecated、Removed、Fixed、Security 分类;过滤合并提交、CI、chore、版本号提升等噪音;识别破坏性变更并加 BREAKING: 前缀;生成 PR/issue 引用与版本对比链接。

使用方式:先做仓库分析,如 git rev-parse --is-inside-work-tree、git tag --sort=-creatordate、git log --oneline -30,并检查 CHANGELOG.md 与 commitlint、git-cliff 等配置;再按范围提取提交,如 git log $(git describe --tags --abbrev=0)..HEAD --pretty=format:"%H|%s|%b|%an|%ae|%aI"。支持四种模式:从零生成、更新现有文件、重排清理、准备发布。

适用场景:需要维护规范变更日志的开源或内部项目,尤其适合使用约定式提交、有标签版本历史的仓库。

限制:无标签时需用户选择处理方式;大型历史(超过 500 提交)建议分批或仅处理近期版本;monorepo 需指定包并按路径过滤;更新模式默认不改动历史条目,除非用户明确要求重排。