如何将NPM包迁移到组织@scope

NPM最近为模块引入了@scopes/组织。是否有一种将现有模块迁移到组织的好方法?有没有工具可以为大量软件包实现自动化?NPM是否支持重定向,以便其他软件仍然可以使用旧名称,但仍会收到更新通知

您可以从以下位置更改package.json:

“名称”:“项目名称”

致:

“名称”:“@scope/project name”

并发布包:

npm发布–access=public

更新:需要使用--access=public参数使作用域包成为公共的-否则默认情况下它将是私有的。您可以在package.json的publishConfig部分中,将access设置为“public”,而不是命令行参数:

“publishConfig”:{
“访问”:“公共”
}

(感谢Danilo Bargen和Greg Pratt在评论中指出了这一点!)

见:https://docs.npmjs.com/getting-started/scoped-packages

npm不支持从旧名称重定向到新名称,但是
您可以使用以下方法弃用旧软件包:

npm不推荐<包装>[@<版本>]<信息>

这样,安装旧版本的用户将收到通知,他们应该安装另一个软件包

见:https://docs.npmjs.com/cli/deprecate

发表评论