是否可以更改npm用户?

Ful*_*ger 6 github username node.js npm

编辑配置文件简单直观,但似乎缺少用户名更改功能.我试图找到一种方法来改变我的npm用户名从npmjs.com.

到目前为止,我唯一想到的就是注册新用户,将其添加到所有包中并使其成为所有者的所有者.

有没有办法可以简单地改变我的npm用户?

Gol*_*den 14

我建议联系npm支持.AFAIK没有公开的,官方的方式来更改您的注册用户名.

根据我的经验,他们非常有帮助和好:-)


fre*_*nte 10

npm 支持告诉我创建一个新帐户并手动移动包。不是很好。

\n\n

因此,这里有一种将现有包移动到新帐户的方法:

\n\n
    \n
  1. 在https://www.npmjs.com和bash/zsh 终端上登录您的旧帐户
  2. \n
  3. 获取当前 npm 包的列表:

    \n\n
      \n
    1. 转到您的个人资料npmjs.com
    2. \n
    3. 展开整个列表,直到不再有“显示更多包”按钮
    4. \n
    5. 在浏览器的控制台中运行此命令,它将把包名称复制到剪贴板:

      \n\n
      copy($$(\'[href^="/package/"]\').map(a => a.textContent).join(\' \'))\n
      Run Code Online (Sandbox Code Playgroud)
    6. \n
  4. \n
  5. 将列表保存在终端的变量中:

    \n\n
      \n
    1. 类型PACKAGES="
    2. \n
    3. 粘贴您之前复制的以空格分隔的包列表
    4. \n
    5. 键入"并按enter
    6. \n
  6. \n
  7. 将新用户添加为所有者

    \n\n
      \n
    1. 替换NEW为您的新用户\xe2\x80\x99s名称,然后运行它,它将显示预览:

      \n\n
      for PKG in $PACKAGES; do echo npm owner add NEW $PKG; done\n
      Run Code Online (Sandbox Code Playgroud)
    2. \n
    3. 运行您刚刚运行的相同命令,但删除echo. 对于您拥有的每个包,这可能需要几秒钟的时间。如果您使用 2FA,某些软件包可能需要 OTP
    4. \n
  8. \n
\n\n

恭喜!您刚刚将新帐户添加为软件包的所有者。

\n\n

现在,您可以删除旧的 npm 帐户,或者再次运行最后一个命令,替换add NEW为remove OLD,其中OLD是您的旧用户名。

\n