有没有办法重命名已经发布的NPM模块?我想更改我的模块的名称,以便更准确地匹配它公开的API,但不想让已经安装它的人陷入困境。
发布于 2016-07-28 17:32:34
简单地说,不,你不能。但是npm为你提供了一个不同的解决方案,叫做npm deprecate
。
它所做的是将该包的特定版本或版本范围标记为已弃用。因此,下一步,如果有人试图安装这个包,他们会得到一个警告包,该包已被弃用,同时还会显示您的自定义消息,您可以在其中轻松地指定新的包名称。
用法:
npm deprecate my-package-name@"< latest-version" "your message"
您的消息可以是以下任何内容:
WARNING: This project has been renamed to your-new-package-name. Install using new-package-name instead.
发布于 2018-04-12 19:05:42
在不到24小时的时间里,我运行了以下命令来删除错误的包。
npm unpublish <wrong package name> --force
发布于 2018-03-07 01:08:41
我曾经遇到过这种情况。我发布了一个名为bowser-or-node
而不是browser-or-node
的包。
没有办法重命名一个包,你必须弃用并发布一个新的包。
尽管还有另一个选择。如果你刚刚发布了你的包(离发布时间不到24小时),如果你确定你可以删除包并用正确的名称发布一个新的包,你可以继续这样做。但是NPM不允许你在发布后的24小时内删除包。
幸运的是,我发现我在不到20分钟的时间里就用错了名字发表了文章。所以我只是删除并重新发布了一个新的名字。
https://stackoverflow.com/questions/28371669
复制相似问题