如何使用standard-version npm包自定义CHANGELOG.md生成配置?
standard-version CHANGELOG 自定义配置方法
版本对比链接异常修正
- 生成的CHANGELOG中版本对比链接无法访问,是工具自动识别Git远端仓库地址出错导致,可通过手动配置仓库地址参数修正,无需修改原有发布流程
- 可配置的地址相关参数:
host:代码托管平台域名,例如GitHub对应值为https://github.comowner:仓库所属的用户名/组织名repo:仓库实际名称
- 配置完成后,工具生成的版本对比链接会自动替换原有错误的
my-project-name路径,生成可正常访问的格式。
提交类型自定义展示规则
- 可通过内置的
types配置项,自定义每类提交在CHANGELOG中的展示分组、显示状态、跳转链接规则 - 单类提交的可配置字段说明:
type:对应commit的前缀标识,例如feat、fix、docssection:该类提交在CHANGELOG中对应的分组标题hidden:设为true时,该类提交不会在CHANGELOG中展示link:自定义该类提交条目的跳转链接,支持占位符{{host}}、{{owner}}、{{repo}}、{{hash}}分别替换之前配置的托管域名、仓库所属方、仓库名、对应提交的commit哈希值
完整配置示例
可在项目根目录新建.versionrc.json文件,或在package.json的standard-version字段下写入如下配置:
{ "host": "https://github.com", "owner": "你的用户名/组织名", "repo": "实际仓库名称", "types": [ { "type": "feat", "section": "✨ 新增功能", "link": "{{host}}/{{owner}}/{{repo}}/commit/{{hash}}" }, { "type": "fix", "section": "🐛 问题修复", "link": "{{host}}/{{owner}}/{{repo}}/commit/{{hash}}" }, { "type": "docs", "section": "📝 文档更新" }, { "type": "chore", "section": "工程化调整", "hidden": true } ] }
- 按上述配置执行
standard-version后,生成的CHANGELOG中:- 所有版本对比链接会替换为正确的仓库路径,可正常跳转
- 不同类型的提交会按照自定义的分组标题展示,配置了
link的条目会自动生成对应提交详情页的跳转地址
内容的提问来源于stack exchange,提问作者noy levi
相关产品推荐
相关产品推荐

