Semantic Versioning
在早期,开发者安装某个软件包时,发现这个软件包里又依赖不同特定版本的其它软件包。随着系统功能越来越复杂,依赖的软件包越来越多,依赖关系也越来越深,这个时候可能面临版本控制被锁死的风险。这就是「依赖地狱」的问题。
因此,Github 起草了一个具有指导意义的,统一的版本号表示规则,称为 Semantic Versioning(语义化版本),即 Semver。目前它是由 npm 的团队维护。
Semver 的出现,规定了版本号如何表示,如何增加,如何进行比较,不同的版本号意味着什么。遵从了 Semver 规范的包依赖会非常清晰,不会出现循环依赖、依赖冲突等常见问题。
版本格式
majol
主版本,一般代表着很大的变更,例如vue 1.x和vue 2.x、 webpack 3.x和webpack 4.x
minor
次版本,一般代表着新feature的出现
patch
般不包含新功能,只是bugfix或和功能关系不大的修改
pre-release
预发行版本,一般用于正式版发行前的验证、联调和测试。和正式版本号之间用-连接
预发版本类型:
- alpha: 内部版本。此版本表示该软件在此阶段主要是