主页

索引

模块索引

搜索页面

2.1.4. 版本规范

语义化版本SemVer

版本格式:
    主版本号.次版本号.修订号[- 先行版本号][+ 版本编译元数据]
版本号递增规则如下:
1. 主版本号: 当你做了不兼容的 API 修改
2. 次版本号: 当你做了向下兼容的功能性新增
3. 修订号: 当你做了向下兼容的问题修正
4. 先行版本号及版本编译元数据: 可以加到“主版本号.次版本号.修订号”的后面,作为延伸

实例:

完整版本=1.2.3-alpha.1

SHORT=1.2.3

MAJOR=1
MINOR=2
PATCH=3
PRERELEASE=alpha.1


1. 1.0.0-alpha+001          => 先行版本: alpha, 版本编译元数据: 001
2. 1.0.0+20130313144700     => 版本编译元数据: 20130313144700

主版本号为零的时候就是为了做快速开发:

如果你每天都在改变 API,那么你应该仍在主版本号为零的阶段(0.y.z),或是正在下个主版本的独立开发分支中
The v0.x.y tags indicate that go APIs may change in incompatible ways in different versions.

万一不小心把一个不兼容的改版当成了次版本号发行了该怎么办?:

一旦发现自己破坏了语义化版本控制的规范,就要修正这个问题,并发行一个新的次版本号来更正这个问题并且恢复向下兼容
即使是这种情况,也不能去修改已发行的版本
可以的话,将有问题的版本号记录到文件中,告诉使用者问题所在,让他们能够意识到这是有问题的版本

主页

索引

模块索引

搜索页面