自己发布 npm 包(上传代码到npm仓库)的时候,需要手动输入命令,一是操作繁琐,二是不方便自动化。
想要问下有没有好的命令行工具,或者相关的库,帮助开发者简化发布 npm 包流程?
自己发布 npm 包(上传代码到npm仓库)的时候,需要手动输入命令,一是操作繁琐,二是不方便自动化。
想要问下有没有好的命令行工具,或者相关的库,帮助开发者简化发布 npm 包流程?
就npm发包来说已经简单到不能再简单了,只需要在项目文件夹执行 npm publish 即可发布,但是我想你应该是觉得每次发布都需要手动修改版本号比较麻烦把, 想通过一个脚本来确认每次发布的版本,以及后续的处理。这可以通过 npm script 实现。
下面这个是一个vscode 插件的npm script, 每次发布的时候,可以直接运行 npm run pub 默认发布patch版本, 也可以执行npm run pub:minor 发布feture版本等等, 通过npm hooks来自动化执行其他脚本,比如发布前lint 和 重新构建,发布后打tag并且自动push 等。或者你可以像vue一样,自己写一个自动化脚本 https://github.com/vuejs/vue/tree/main/scripts
"scripts": {
"prebuild": "npx browserslist@latest --update-db",
"build": "yarn run build:webview && yarn run build:extension",
"build:extension": "cross-env NODE_ENV=production webpack --mode production --config ./script/webpack.extension.config.js",
"build:webview": "cross-env NODE_ENV=production webpack --mode production --config ./script/webpack.config.js",
"clear": "rm -rf dist",
"compile": "yarn run clear && yarn run build",
"dev": "yarn run dev:webview & yarn run dev:extension",
"dev:extension": "cross-env NODE_ENV=production webpack -w --config ./script/webpack.extension.config.js",
"dev:webview": "cross-env NODE_ENV=development webpack -w --config ./script/webpack.config.js",
"lint": "eslint src --ext ts,tsx",
"pub": "npm run pub:patch",
"pub:major": "npm version major",
"pub:minor": "npm version minor",
"pub:patch": "npm version patch",
"preversion": "npm run lint && npm run build",
"postversion": "vsce publish --yarn && git push && git push --tag",
"vscode:prepublish": "npm run lint && yarn run compile",
"vsix": "vsce package -o muse-$npm_package_version.vsix && code --install-extension muse-$npm_package_version.vsix"
},
10 回答11.1k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
4 回答2.5k 阅读✓ 已解决
可以在
package.json
中的scripts
下添加一个脚本命令,示例如下:也可以根据需要加上其他命令,例如更新版本号:
然后执行
release
即可