軟體發佈
參考
https://blog.csdn.net/csdn_huzeliang/article/details/105552524 https://fed.taobao.org/blog/taofed/do71ct/instructions-of-semver/
介紹
根據國際主流的慣例,我們使用「語義化版本(Semantic Versioning)」的命名方式,有時簡稱 SemVer。
語義化版本號(以下簡稱「版本號」)的格式是:<major>.<minor>.<patch>
。即使用三位非負整數,以點號 .
連接。
如:1.4.15
、6.2.0
。
版本命名規則:一個典型的版本,一般包含如下 4 個信息:主版本號.次版本號.修訂號.版本限定符。
- 主版本號
<major>
:產品方向改變,或者大規模 API 不兼容,或者架構不兼容升級,一般不兼容上一个主版本号。 - 次版本號
<minor>
:保持相對兼容性,增加主要功能特性,必须是向前兼容的,影響範圍極小的 API 不兼容修改。 - 修訂號
<patch>
:保持完全兼容性,修覆 BUG、新增次要功能特性等。 - *預發版本號
<prerelease>
:預發版本號是常規版本號的附屬,因此在版本的大小比較上,仍然先比較常規版本號部分;對於預發標記部分的比較,則是根據 ASCII 字母表中的順序來進行。
注意事項
- 版本號前不要加
v
。 - 不要在數字前補
0
。錯誤示例:01.12.03
。 - 每一位版本號按照 +1 的速度遞增,不要在版本號之間跳躍。
- 主版本號停留在
0
的版本號,即0.x.x
應當視作還在內部開發階段的代碼。如果代碼有公共 API,此時不宜對外公開。 1.0.0
的版本號用於界定公共 API 的形成。- 當次版本號遞增時,修訂號歸零;當主版本號遞增時,次版本號、修訂號歸零。
- 進行新的開發時,版本號從
0.1.0
開始。 - 如果不小心把一個不兼容的改版當成了次版本號發行,應當發行一個新的次版本號來更正這個問題並且恢覆向下兼容。注意 不能去修改已發行的版本。