git版本管理以及生成changelog
# npm 版本管理
- 1.version类别介绍 每个npm包中都有一个package.json文件,如果要发包的话,package.json中的version就是版本号了。 version字段结构为:'0.0.0-0' 分别代表:大号.中号.小号-预发布号,对应majon.minor.patch-prerelease 下面来看看npm中version的类别及描述。
参数 | 描述 |
---|---|
major | 如果没有预发布号,则直接升级一位大号,其他位都置为0 如果有预发布号: 1.中号和小号都为0,则不升级大号,而将预发布号删掉。即2.0.0-1变成2.0.0,这就是预发布的作用 2.如果中号和小号有任意一个不是0,那边会升级一位大号,其他位都置为0,清空预发布号。即 2.0.1-0变成3.0.0 |
minor | 如果没有预发布号,则升级一位中号,大号不动,小号置为空 如果有预发布号: 1.如果小号为0,则不升级中号,将预发布号去掉 2.如果小号不为0,同理没有预发布号 |
patch | 如果没有预发布号:直接升级小号,去掉预发布号 如果有预发布号:去掉预发布号,其他不动 |
premajor | 直接升级大号,中号和小号置为0,增加预发布号为0 |
preminor | 直接升级中号,小号置为0,增加预发布号为0 |
prepatch | 直接升级小号,增加预发布号为0 |
prerelease | 如果没有预发布号:增加小号,增加预发布号为0 如果有预发布号,则升级预发布号 |
- 2.version命令的使用
执行命令
npm version xxx
可以自动更改package.json
中的对应的位置的版本号
# 自动生成changelog
如果所有的commit都符合格式,那么发布新版本时,change log 就可以用脚本自动生成。
conventional-changelog 就是生成 Change log 的工具。
先在项目中安装一下
npm install -D conventional-changelog-cli
1
接着配置一下脚本执行命令
"scripts": {
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
"version:major": "npm version major&&npm run changelog",
"version:minor": "npm version minor&&npm run changelog",
"version:patch": "npm version patch&&npm run changelog"
}
1
2
3
4
5
6
2
3
4
5
6
这样每次在升级版本号的同时就会去生成对应的changelog
编辑 (opens new window)
上次更新: 2023/03/08, 09:35:38