Skip to main content

軟體發佈

參考

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.156.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 開始。
  • 如果不小心把一個不兼容的改版當成了次版本號發行,應當發行一個新的次版本號來更正這個問題並且恢覆向下兼容。注意 不能去修改已發行的版本