语义化版本控制
- 基础
- 三级结构
- 主版本号
- 次版本号
- 修正版本号
- 思维导图
- 在node包管理中的特殊规则
- 参考文件
基础
语义化版本控制是一套通用的包/库的版本管理规范。在各类语言的包管理中都有用到,一般以x.x.x的形式出现在包的命名中。
三级结构
在语义化版本控制中,一个版本号主要由三个部分组成。主版本号.次版本号.修订版本号。
主版本号
以1.0.0,作为一个包正式版本的开始。每次的主版本号变更代表你进行了不兼容历史api的破坏性更新。新的包就需要以新的主版本号开始。
次版本号
在主版本号不变的情况下,次版本号的更新代表你提供了新的功能或者做了旧的优化,这些改变不会破坏历史的api。更新功能、优化等能向后兼容的改动,需要更新次版本号。
修正版本号
修正版本号的更新最为频繁,bug修复会使得修改版本号产生变化。
思维导图
在node包管理中的特殊规则
// lodash 和 antd 都只可更新修正版本
{"lodash": "~1.0.4","antd": "1.0.x"
}
// lodash 和 antd 都可更新次要版本
{"lodash": "^1.0.4","antd": "1.x"
}
// lodash 和 antd 可以更新到最新的首要版本
{"lodash": "*","antd": "x"
}
参考文件
语义化版本控制
npm语义化控制