npm发包的时候需要掌握的常用的指令;
注册
/* 依次输入Username、Password、Email完成注册 */
npm adduser
登陆
npm login
查看当前登陆账号
npm who
创建npm包 npm init
{
"name": "shang-utils", // 包名,必须要独一无二
"version": "1.0.0", // 版本号
"author": "xxx", // 作者
"description": "common toolkit", // 描述信息
"keywords": ["utils", "format", "money", "phone"], // 关键词,提升SEO
"repository": {
// 代码托管位置
"type": "git",
"url": "https://github.com/xxx/shang-utils"
},
"license": "ISC", // 许可证
"homepage": "https://your-package.org", // 包的主页或者文档首页
"bugs": "https://github.com/xxx/shang-utils/issues", // 用户问题反馈地址
"main": "index.js", // 入口文件
"scripts": {
// 存放可执行脚本
"test": "echo \"Error: no test specified\" && exit 1"
},
"dependencies": {
// 运行依赖
},
"devDependencies": {
// 开发依赖
}
}
返回下一个小版本
npm version patch
改回npm源
// 查看npm镜像源地址
npm config get registry
/* 切换npm镜像源 */
// 设置npm默认源
npm config set registry https://registry.npmjs.org
npm config set registry https://registry.npmmirror.com
// 设置npm镜像源为淘宝镜像
npm config set registry https://registry.npm.taobao.org
npm config delete register
发布
npm publish
删除
npm unpublish 包名 --force
命令更新package.json中的版本号
/* 备注:
1.这个命令只是改变package.json中的version版本号
2.命令行输入后会返回改变的版本;
3.成功后npm publish
*/
// patch:补丁号,修复bug,小变动,如 v1.0.0->v1.0.1
npm version patch
// minor:次版本号,增加新功能,如 v1.0.0-> v1.1.0
npm version minor
// major:主版本号,不兼容的修改,如 v1.0.0 -> v2.0.0
npm version major
// 命令用于将您的npm包版本标记为预发布版本
npm version prerelease 1.3.5 -> 1.3.6-0
/*-preid参数介绍(备注:修改后会自动git提交一个记录)
- alpha: 代表内部测试版,会有很多Bug,是比beta更早的版本,一般不建议对外发布
- beta: 相对alpha版本已有了很大的改进的测试版本
- rc:Release Candidate顾名思义就是正式发布的候选版本。
// 1.8.1 > 1.8.2-alpha.0 正常版本会加1,如果是测试版本只是改后缀
npm version prerelease --preid=alpha
// 1.8.1 > 1.8.2-beta.0 正常版本会加1,如果是测试版本只是改后缀
npm version prerelease --preid=beta
// 1.8.1 > 1.8.2-rc.0 正常版本会加1,如果是测试版本只是改后缀
npm version prerelease --preid=rc
*/
发布测试包
npm publish --tag=beta
npm publish --tag alpha
npm publish --tag rc
// 修改为tag
npm dist-tag add test-npm-tag@1.1.0-beta.1 beta
// 修改为latest
npm dist-tag add test-npm-tag@1.1.0 beta latest
单独更新
npm install 包名 @latest
npm i 包名 -f
清理缓存
npm cache clean --force