预发布版本号是什么
在版本号后附加连字符标识预发布状态(如 1.0.0-rc.1、2.0.0-beta.2):按语义化版本规范,预发布版本的排序低于对应的正式版本,比如 1.0.0-rc.1 低于 1.0.0。它让候选、测试、预览版本有一个依赖工具能正确理解的名字。
基本信息
| 语法 | MAJOR.MINOR.PATCH-标识(如 2.0.0-beta.2) |
|---|---|
| 排序 | 预发布低于对应正式版;同级之间按标识逐段比较 |
| 比较细节 | 以点分段的标识逐一比较,纯数字段按数值、字母段按字典序 |
| 常见标识 | alpha 早期、beta 测试、rc 发布候选 |
| 用途 | 候选版、测试版、预览版的分发与依赖选择 |
| 标签写法 | git tag -a v2.0.0-rc.1 -m '...',与规范格式保持一致 |
典型使用场景
- 发布候选:rc 版用于冻结验证,通过后再发正式版。
- 灰度测试:beta 给部分用户试用,收集反馈。
- 内部预览:alpha 标注早期构建,明确不承诺兼容。
- 依赖管理:工具按规范排序,默认选择稳定版。
- 标签管理:与标签命名规则统一,流水线才能自动识别预发布。
- 回滚策略:出问题回退到上一个稳定版而不是另一个预发布版。
- 下游验收:让测试团队按标识识别构建来源,例如 beta 反馈走单独渠道。
示例
示例
1.0.0-alpha < 1.0.0-beta < 1.0.0-rc.1 < 1.0.0 # 排序逐级升高
git tag -a v2.0.0-rc.1 -m 'release candidate 1' # 候选版标签
git tag -a v2.0.0 -m 'release 2.0.0' # 正式版标签
git describe --tags # 校验当前代码对应的版本标识选择参考
| 标识 | 阶段 | 承诺 |
|---|---|---|
| alpha | 早期构建 | 功能可能随时变 |
| beta | 功能基本冻结 | 以修缺陷为主 |
| rc | 发布候选 | 只接受阻断级修复 |
| (无) | 正式发布 | 按语义化版本承诺兼容 |
候选版用于发布前冻结验证,冻结期内只接受阻断级修复;标签命名与规范保持一致,依赖工具才能正确排序;对外分发时随版本附上变更说明,测试方才能判断是否切换。