trs-tag
v1.0.16
Published
a tool for easy update package.version and create git tag / push git tag
Downloads
32
Keywords
Readme
trs-tag
这是一个用来自动更新版本号|打 tag|推送 tag 的命令行工具
由于命令与其它工具命令有冲突,所有原 trs 调用的命令全部改为 gt 调用,其它配置不变
安装方法
$ npm install trs-tag -g
更新本工具
$ npm update trs-tag -g
使用方法
更新版本号
$ gt ver --type=updateTypeupdateType: 版本更新类型
patch: 小版本更新(默认)minor: 中版本更新major: 大版本更新x.x.x:自定义版本号,如1.1.1
生成配置文件
$gt init打 tag 并推送到远程仓库(origin)
$ gt tag --env=envType --msg=tagMessage --ver=version --push --remote=originenvType: 环境类型,需要在配置文件中配置类型及相应 tag 前缀,默认为‘dev’tagMessage:tag描述信息, 默认为tag名称version: x.x.x:自定义 tag 版本号,如1.1.1, 默认为package.json中的version字段值--push: 是否推送远程,如不需要,可不传origin: 推送到的远程仓库名称,默认值为 origin
或者,您可以运行:
$ gt tag -s此命令将使用交互式命令完成以上各项操作。
查看 git 命令大全
$ gt githelp配置文件与格式
可预先配置不同环境的 tag 前缀
配置支持:
package.json中新增名为'trs-tag'的属性.trs-tagrc配置文件.trs-tagrc.json或者.trs-tagrc.yaml或者.trs-tagrc.js或.trs-tagrc.cjs文件- 遵循
CommonJS模块化规范导出一个对象的trs-tag.config.js文件 或trs-tag.config.cjs文件
配置项
{
"envs" : {
"dev": "dev-v",
"test": "test-v",
"prod": "prod-v",
},
"beforeTag": "",
"afterTag": "",
"versionFile": [
{
"path":"public/app.config.js",
"reg":"(version:\\s+)'[\\w\\.\\d-]+'",
"replace":"$1'__VERSION__'"
}
],
"versionCommitMsg": "全局版本号更新"
}
envs:dev: 开发环境 tag 前缀test: 测试环境 tag 前缀prod: 正式环境 tag 前缀- 用户可添加其它自定义环境与前缀
beforeTag: 创建 tag 之前的钩子,可配置 shell 命令afterTag: 创建 tag 之后的钩子,可配置 shell 命令- 例=>
"afterTag": "node changelog.js __VERSION__",命令中的__VERSION__会被替换成为已生成的 tagName(版本号)
- 例=>
versionFile: 需要全局替换版本标识的文件数组path: 需要全局替换版本标识的文件路径reg: 需要全局替换版本标识的正则匹配- 例=>
reg:"(version:\\s+)'[\\w\\.\\d-]+'"需要注意的是:\s等字符需要改成\\s,否则会报错无效的转义字符
- 例=>
replace: 需要全局替换版本标识的正则替换格式- 例=>
"replace":"$1'__VERSION__'", replace 中的__VERSION__会被替换成为生成的 tagName(版本号),具体参考JS中的replace()方法
- 例=>
versionCommitMsg: 全局版本更新后的提交信息
