如果我使用版本v1.0.0
在github上分叉项目,然后添加一些新功能。它仍然是向后兼容的,所以如果我正确理解语义版本控制,我将版本更改为v1.1.0
。如果我现在决定要更改新功能的命令行参数,它会变为v1.2.0
还是v2.0.0
,因为此更改会破坏v1.1.0
中引入的向后兼容性?
答案 0 :(得分:0)
如果我现在决定要更改新功能的命令行参数,它是否会变成v1.2.0或v2.0.0,因为此更改会破坏v1.1.0中引入的向后兼容性?
请阅读the SemVer spec。它非常清楚地解释了这些要求。
所有重大更改都需要Major版本。以前的历史,分支等与问题无关。重要的是,您是否对您即将公开的版本进行了重大更改?如果是,请点击重大,如果不是,则仍然由您决定更改是否具有足够的风险来触发Major,否则会因为新的向后兼容功能而遭遇Minor,而Patch则向后兼容所有其他功能。