13.版本号和npm

Semantic versioning是很多项目用来描述更新时的修改程度的标准。因为有些包的修改会导致某些引用这些包的代码不能正常运行,所以对于修改程度的描述在发布包时是很重要的。
对于发布者 如果这个项目需要共享给其他人,则版本号应该始于1.0.0,然而有些npm上的项目并没有遵循这个规则。
在这之后,发布修改应该遵循以下几点:

  • 修复BUG或者一些微小的改动:Patch release,增加最后一个数字,例如1.0.1。
  • 新增一些不会破坏原有特性的新特性:Minor release,增加中间的数字,例如1.1.0。
  • 发生的改变将会影响兼容性:Major release,增加第一个数字,例如2.0.0。
对于使用者 作为一个使用者,通过package.json文件你可以选择所使用包版本的范围。
如果你想使用一个1.0.4的包,以下示例指定的范围可以包括这个包:
  • Patch releases: 1.0 or 1.0.x or ~1.0.4
  • Minor releases: 1 or 1.x or ^1.0.4
  • Major releases: * or x
你可以通过 granular semver ranges 学习更多。
【13.版本号和npm】官方原文

    推荐阅读