npm version 介绍
1.版本号的格式
版本号基本是由三位数字组成:
1 . 0 . 0
[MAJOR].[MINOR].[PATCH]
三位数字分别代表不同意思:
- MAJOR 进行不兼容的API更改时的版本
- MINOR 以向后兼容的方式添加功能时的版本
- PATCH 向后兼容的错误修复程序的版本
2.npm version
前端目前的代码包管理工具npm,本身有提供命令工具帮助编码人员解决版本升级的工作。下面是代码:
$ npm version [<newversion> | major | minor | patch | premajor | preminor | prepatch | prerelease [--preid=<prerelease-id>] | from-git]
'npm [-v | --version]' to print npm version
'npm view <pkg> version' to view a package's published version
'npm ls [-g]' 查看当前项目的npm包。-g:查看全局的包
下面是关于版本选项的描述(假设默认版本为0.2.0):
| 选项 | 描述 | 例子 | 说明 |
|---|---|---|---|
| major | 重大更新版本 | npm version major | 0.2.0 =》1.0.0 |
| minor | 主要更新版本 | npm version minor | 0.2.0 =》0.3.0 |
| patch | 补丁更新版本 | npm version patch | 0.2.0 =》0.2.1 |
| premajor | 重大更新预发布版本 | npm version premajor | 0.2.0 =》1.0.0-0 |
| preminor | 主要更新预发布版本 | npm version preminor | 0.2.0 =》0.3.0-0 |
| prepatch | 补丁更新预发布版本 | npm version prepatch | 0.2.0 =》0.2.1-0 |
| prerelease | 预发布版本 | npm version prerelease | 当前版本不是预发布版本的会出错 |
3.使用例子
场景一:开发流程
# 代码提交
git commit
# 更新至的预发布版本
$ npm version prerelease --preid=feed ## 0.2.0 =》0.2.1-feed.0
# 更新至新的补丁版本
$ npm version patch ## 0.2.1-feed.0 =》0.2.1
4.一些注意事项:
- 版本号更新会同时修改 package.json 和 package-lock.json
- 默认会创建一个 git commit 和 tag
- 如果工作目录有未提交的更改,需要先提交或使用 --force
- 建议在主分支上执行版本更新操作
- 建议遵循语义化版本规范