CI/CD作为现代 DevOps 流程中的核心环节,其中会涉及到多个 npm 相关的命令。本文就 CI/CD开发过程中遇到过的 npm 命令做一个总结。
管理配置(npm config )
管理 npm 环境相关的配置
查看配置
npm config list:列出所有当前生效的配置npm config get <key>:获取指定配置项的值,如registry或prefix
修改配置
npm config set <key>=<value>:设置配置项。如切换镜像源:npm config set registry=https://registry.npmmirror.comnpm config edit:直接编辑用户级npmrc文件
删除配置
npm config delete <key>:移除指定配置项
权限管理(npm owner)
npm owner 是用于管理包(package-name)所有者权限的命令,主要功能包括添加、删除和列出包的维护者.
列出所有者
npm owner ls <package-name>
添加所有者
npm owner add <username> <package-name>
删除所有者
npm owner rm <username> <package-name>
账户相关
登录 npm
npm login --registry="https://registry.npm.your-registry.io"
依次输入 username、password和email
查看当前用户
npm whoami --registry="https://registry.npm.your-registry.io"
npm包相关
查看npm包版本
npm view <package-name>:查看包的最新版本完整元数据(如dependencies、description、versions、dependencies、maintainers、dist-tags等)npm view <package-name> dist-tags:查看发布结果,可以看到 tags 的最新版本
{
"latest": "1.0.1", // 生产环境版本
"beta": "1.0.0-beta.2" // 开发环境版本
}
npm view <package-name> dist-tags.latest:查看最新生产版本号npm view <package-name> version:和上面效果一样,查看最新生产版本号npm view <package-name> dist-tags.beta:查看 beta tag的最新版本
发布npm
npm publish:发布当前项目到 npm 仓库,默认使用latest标签。
注意📢:package.json 中的 version 必须唯一且未发布过。
npm publish --tag beta:发布版本号为x.y.z-beta.n,并标记为beta标签
注意📢:用户可通过 npm install <package-name>@beta 安装
版本号管理
自动更新 package.json 中的 version 字段
npm version patch # 递增修正版本号(1.0.0 → 1.0.1)
npm version minor # 递增次版本号(1.0.0 → 1.1.0)
npm version major # 递增主版本号(1.0.0 → 2.0.0)
npm version prerelease --preid=beta # 递增预发布版本号(1.0.0-beta.1 → 1.0.0-beta.2)
撤销版本号
npm unpublish <package-name>@<version> # 撤销特定版本
npm unpublish <package-name> --force # 彻底删除包(需满足 npm 政策)
注意📢:撤销后 24 小时内不能重复发布相同版本
发布到私有仓库
npm publish --registry <私有仓库URL>
注意📢:需先配置 npm config set registry <URL>