semantic-release
semantic-release 是一个自动化版本管理和包发布工具,基于提交信息自动确定版本号并发布。
时间轴 (近 90 天)
在 Git 与包管理生态中,"bump" 一词特指提升版本号这一动作,常见于 npm version、bumpversion、semantic-release 等自动化工具。
monorepo 项目通常引入自动化版本工具(如 Changesets、semantic-release 或 lerna)配合 CI 流水线,在提交合并到主干后自动计算版本号、打 Git tag 并发布。
CI/CD 自动发布指代码合并到主分支后,由流水线自动完成版本号推进(通常借助 changesets、semantic-release 等工具)、生成 changelog、打 tag 并发布到 npm。
release-drafter、semantic-release、changesets 等托管变更日志工具依赖提交约定(如 BREAKING CHANGE: 页脚、feat!: 前缀)来生成日志。
github-actions 自动发布通常依赖 GitHub 的 OIDC 与 npm 的 provenance 机制,发布流水线一般由 changesets 或 semantic-release 触发。
Cline 采用的自动化流水线常配合 Changesets 或 semantic-release 工具,自动根据 commit 信息推断版本号、生成 changelog 并提交 PR。
Changesets 或 semantic-release 这类自动化发布模式已被 Vite、Vitest、Turborepo 等主流开源项目验证并使用。
全部知识事实 (9)
根据语义化版本规则,fix类型提交触发PATCH版本递增,feat类型触发MINOR递增,包含BREAKING CHANGE的提交触发MAJOR递增
95%待验证semantic-release等自动化发布工具完全依赖规范化的提交信息来决策版本号
90%待验证在 Git 与包管理生态中,"bump" 一词特指提升版本号这一动作,常见于 npm version、bumpversion、semantic-release 等自动化工具。
50%待验证monorepo 项目通常引入自动化版本工具(如 Changesets、semantic-release 或 lerna)配合 CI 流水线,在提交合并到主干后自动计算版本号、打 Git tag 并发布。
50%待验证CI/CD 自动发布指代码合并到主分支后,由流水线自动完成版本号推进(通常借助 changesets、semantic-release 等工具)、生成 changelog、打 tag 并发布到 npm。
50%待验证release-drafter、semantic-release、changesets 等托管变更日志工具依赖提交约定(如 BREAKING CHANGE: 页脚、feat!: 前缀)来生成日志。
50%待验证github-actions 自动发布通常依赖 GitHub 的 OIDC 与 npm 的 provenance 机制,发布流水线一般由 changesets 或 semantic-release 触发。
50%待验证Changesets 或 semantic-release 这类自动化发布模式已被 Vite、Vitest、Turborepo 等主流开源项目验证并使用。
50%待验证Cline 采用的自动化流水线常配合 Changesets 或 semantic-release 工具,自动根据 commit 信息推断版本号、生成 changelog 并提交 PR。
50%