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。
这样你就有两份配置了。
接下来,在你的脚本(zsh, bash)里面添加快捷命令,我用的 zsh,所以只需要打开 $HOME/.zshrc
加入如下代码:
function npmc() {
npm "$@" --userconfig ~/.npmrc-boxutech
}
npm 的命令我们没有更改,如果需要操作公司的仓库,只需要使用 npmc 进行平替。
例如:
npm publish
npmc publish
npmc 支持 npm 所有命令,使用体验一流。
参考: