版本号命名规则
命名规则
主版本号.次版本号.修正版本号
版本号规则
- 主版本号、子版本好、修正版本号均为非负数,且发布版本号必须按数值递增;
- 当主版本号为0时代表处于开发阶段,API可能不稳定。
常见版本号修改规则
- 当项目为初版本时,版本号常为0.1.0;
- 当项目进行了局部修改或bug修改时,主版本号以及子版本好不变,修正版本号+1;
- 当项目在原有基础上进行版本优化、增加功能时,主版本号不变,子版本号+1,修正版本号归0;
- 当项目进行了重大修改、增加多个模块或者整体架构发生变化时,主版本号+1,子版本号归以及修正版本号归0,如2.0.0。
常见修饰词
- alpha:内部版本
- beta:测试版
- demo:演示版
- enhance:增强版
- free:自由版
- full version:完整版,即正式版
- lts:长期维护版本
- release:发行版
- rc:即将作为正式版发布
- standard:标准版
- ultimate:旗舰版
- upgrade:升级版
常见版本符号说明
- *: 表示安装版本号任意,默认是会安装最新大版本的依赖包;
- ^ : 可以安装大于等于当前版本,遵循的原则是左侧第一个非零的版本号作为依据(主版本号或者次版本号,例如
'^1.2.3'表示主版本号固定为 1,次版本号以及修复版本号可升级;'^0.2.3'表示主版本号和次版本号不变,修复版本号可升级),如果最左侧第一个非零版本号在修复版本号,则基本可以认为版本号固定不变。 - ~ : 可以安装大于等于当前版本,遵循的原则是依据最右侧非零整数的版本号。如果最右侧非零整数版本号在修复版本号上或者在次版本号上面,均表示主版本号和次版本号表示不变,修复版本号可升级;如果是最右侧非零版本号在主版本号,则次版本号和修复版本号可升级,主版本号不变。如
'~1.0.0' < 2.0.0 - > &不带标识: 符号用来指定可以安装的 beta 版本;
如发现上述表述有错误,可以自行修复后再群里告知大家,谢谢
其他
- 可以通过 npm config set save-prefix='' 来设置默认符号;
- 如果只在开发时需要,运行时不需要的包,可以npm install X –save-dev,会添加在package.json的devDependencies属性下;
- 如果没有-save,会把X包安装到node_modules目录中,不会修改package.json,之后npm install不会自动安装;
- 执行"npm install"时,node会重新生成package-lock.json文件,然后把node_modules中的模块信息全部记入package-lock.json文件;
- package.json文件只记录通过npm install方式安装的模块信息,而这些模块所依赖的其他子模块的信息不会记录。但是package-lock.json文件锁定所有模块的版本号,包括主模块和所有依赖子模块。