2017-10-12 217 views
2

有关何时增加MAJOR与MINOR版本号(SemVer 2.0)的规则非常引人注目。他们清楚地知道应用程序/服务是否向后兼容很多优点。SemVer中MINOR与PATCH规则的原因

但是该网站并没有真正给出MINOR和它称为PATCH之间差异的原因。我不认为它给予MAJOR和MINOR相同的好处。

仅供参考这里的SemVer规则:

  1. 当你做出不兼容的API改变主要版本,
  2. 当你在一个向后兼容的方式添加功能次要版本,并
  3. 补丁版本时你做出向后兼容的错误修复。

所以MINOR和PATCH之间唯一的区别就是功能和bug修复。我的公司想要这样做。

他们希望MINOR是[向后兼容]功能的集合。 “PATCH”(我们称之为Incremental)是获得这些功能所需的版本。 (我们在发布功能时发布错误修复。)例如,如果我们计划在2.4版本中使用7 [向后兼容]功能,那么2.4.0可能具有2个功能,2.4.1可能具有3个功能功能和2.4.2将有最后2个(也许每个版本有一个错误修复或两个)。

我可以看到,这违反SemVer,但我需要知道为什么SemVer已经决定要对未成年和补丁版本之间的区别规定,所以我可以知道哪种方式把我的公司。

注意:我希望Stack Overflow不会过于主观。我通常不会问这样的问题,所以有可能这个问题需要关闭......

+0

对于https://softwareengineering.stackexchange.com/ – Blorgbeard

+0

@Blorgbeard,当提及其他网站时,这可能是一个更好的问题,通常指出[交叉发布是令人不悦的](https:// meta。 stackexchange.com/tags/cross-posting/info) – gnat

回答

0

这个标准是故意简化的。没有任何东西可以阻止你随着新功能发布一系列错误修复,并且只有当你这样做时,你才需要修改次要域。如果更改仅涉及错误修复,重构或不添加,删除或修改任何界面的文档,则只会修补修补程序。整个过程就是向您的消费者传达您在更新消息时的风险等级。