4

我正在开发一个带有 node.js 的 SaaS 应用程序,使用 npm 来管理依赖项。我正在尝试决定如何处理版本号。我们的发布模式将是市场功能并在准备好后发布,而不是营销版本。

我正在寻找有关 package.json 版本字段的建议。由于我们不会将应用程序发布到 npm 注册表,因此我真的可以使用我想要的任何版本号。我真的不想维护一个典型的版本号,比如 1.0、1.2、2.0 等。由于发布只是一个准备就绪时发布的项目,因此日期对我来说是更好的版本,比如“RELEASE_20130104”,但 npm 要求package.json 中的 version 字段可由 semver 规则解析。

我很想听听社区的其他人为基于 SaaS npm 的应用程序做了什么。

要求:

  1. 轻松 - 我不想浪费时间在 1.2.0 或 2.0 之间争论。这只是下一个版本。
  2. 必须满足 npm 版本语法规则。

锦上添花:

  1. 可通过构建过程编写脚本,例如提取 SVN 分支和修订号。
  2. 版本意味着一些东西,比如发布日期。

我提出的解决方案:

  1. 严格遵循 semver major.minor.patch 模式。这将需要针对不同版本类型的单独脚本,并且对于预发布版本来说将是一场噩梦。
  2. 以“2013.01.04”等semver格式表示发布日期
  3. SVN 修订号 + 分支或标签名称,如“21484-BugFix21”。缺点是非发布版本的版本不会告诉您它们是从哪个发布版本分支出来的。
  4. 选择一个虚拟版本,永远不要像“1.0.0”那样改变它。在单独的字段中以我想要的格式跟踪版本,例如“appRelease”:“2013.01.04”。

我不期待正确或错误的答案。有很多解决方案。我正在寻找其他人过去采取的方法。

4

0 回答 0