NPM 多账户管理实践

109 阅读1分钟

npm 的全局配置只有一个,如果登录了公司的账户,自己的账户就需要退出。来回切换是不现实,理想的情况想用自己的账号就用自己的账户,想用公司就用公司的。

正常通过 npm login 登录的情况下,你的 $HOME/.npmrc 文件如下,一个源,一个 token。

registry=https://registry.npmjs.org/
//registry.npmjs.org/:_authToken=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

同级目录下,复制一份命名为 $HOME/.npmrc-[company] 例如,.npmrc-ali,更改 registry 和 _authToken。

这样你就有两份配置了。

image.png

接下来,在你的脚本(zsh, bash)里面添加快捷命令,我用的 zsh,所以只需要打开 $HOME/.zshrc 加入如下代码:

function npmc() {
  npm "$@" --userconfig ~/.npmrc-boxutech
}

npm 的命令我们没有更改,如果需要操作公司的仓库,只需要使用 npmc 进行平替。

例如:

npm publish
npmc publish

npmc 支持 npm 所有命令,使用体验一流。

参考: