Post-发布版本控制和 SemVer 2.0(语义版本控制)

Post-Release versioning and SemVer 2.0 (sematic verisoning)

这不是编码,而是流程问题。

我正在构建的软件可能需要 post 版本修复或针对某些市场或一般市场添加功能。

遵循SemVer 2.0 (http://semver.org/spec/v2.0.0-rc.2.html) scheme of appending a - tag to the designated version number to mark I would add a + tag to the version number to标记这样一个 post-release 版本。

只要不发生重大变化,就会产生以下版本树:

1.0.1-rc1                               // initial pre-release
|
1.0.1-rc2                               // second pre-release
|
1.0.1                                   // actual release
|
|-------- 1.0.1+1 --- 1.0.1+2           // post release path
|
|
|
1.0.2                                   //non breaking
|
2.1.0                                   //1st breaking

是否有更好的方法使其完全符合 semver 标准?

npm、jspm 和 yarn 将如何处理这样的 semVer 扩展?

我是不是少了一块?有"offical"解决方案吗?

根据 semver 规范,我的建议似乎是 "invalid"

  1. 构建元数据可以通过在补丁或预发布版本之后附加一个加号和一系列以点分隔的标识符来表示。标识符必须仅包含 ASCII 字母数字和连字符 [0-9A-Za-z-]。在确定版本优先级时应该忽略构建元数据。 因此两个版本相同但构建元数据不同的包被认为是相同的版本。示例:1.0.0-alpha+001、1.0.0+20130313144700、1.0.0-beta+exp.sha.5114f85.