更新npm包的自述文件时版本颠簸?

如果我修改npm包的自述文件,我维护,是否需要在package.json中打包版本,并执行另一个npm发布? 还是有另一种方式来更新自述文件没有版本碰撞。

根据你对“需要”的定义,这可能是两个非常不同的问题:

  1. [可以发布自述文件的更改而不会影响版本号吗?]

  2. [技术上是否可以在不增加版本的情况下发布更改]

接受的答案(通过npm publish --force更新,即不增加版本号的任何部分)对于Q2是一个很好的答案。 但我想解决Q1。

不鼓励使用npm publish --force 。 相反,鼓励作者使用语义版本化aka semver ,它规定:

…版本格式的XYZ(Major.Minor.Patch)。 错误修复不影响API增加补丁版本,向后兼容的API添加/更改递增次要版本,向后不兼容的API更改递增主要版本。

所以我的回答是:虽然从技术上说,有一种方法可以在没有版本冲突的情况下发布更改,但是您不应该那样做。 对于不影响包的API的小修改,您应该修改“修补”版本,例如从1.2.0到1.2.1。

如果版本号已经存在于registry中, npm publish --force会覆盖它。

https://npmjs.org/doc/publish.html

您可以取消发布:

 npm unpublish [@<scope>/]<name>[@<version>] 

,但不再可能publish --force ,因为它已被弃用。 除此之外,您唯一能做的就是发布一个新的次要版本。 这里详细讨论: http : //blog.npmjs.org/post/77758351673/no-more-npm-publish-f

对于其他在这里的人来说,他们认为他们是对的。 是的,你做得对; 在5-10分钟内检查您的npm页面。