プレリリースバージョンの比較 (alpha, beta, rc)

1.0.0-alpha.1、1.0.0-beta.2、1.0.0-rc.1のようなプレリリースバージョンを比較します。数値と文字列の識別子の順序ルールを理解します。

Version Comparison

詳細な説明

プレリリースバージョンの比較

プレリリースバージョンは、SemVer 2.0.0仕様で定義された特定の順序ルールに従います。これらのルールは、アルファ、ベータ、RCリリースを公開する際に重要です。

順序アルゴリズム

同じmajor.minor.patchの2つのプレリリースバージョンを比較する場合:

  1. プレリリース部分をドットで識別子に分割
  2. 識別子を左から右に比較
  3. 各ペアに型固有のルールを適用

型固有のルール

タイプA タイプB ルール
数値 数値 整数として比較(2 < 11
文字列 文字列 辞書順で比較("alpha" < "beta"
数値 文字列 数値は常に低い(1 < "alpha"

完全な順序の例

最低から最高の優先度:

1.0.0-0
1.0.0-1
1.0.0-alpha
1.0.0-alpha.0
1.0.0-alpha.1
1.0.0-alpha.beta
1.0.0-beta
1.0.0-beta.2
1.0.0-beta.11
1.0.0-rc.1
1.0.0

実践的なリリースサイクル

典型的なリリースサイクル:

1.0.0-alpha.1 → 1.0.0-alpha.2 → 1.0.0-beta.1 → 1.0.0-rc.1 → 1.0.0

ユースケース

npmパッケージやライブラリの多段階リリースプロセス(アルファ、ベータ、RC)を管理し、バージョンの順序が意図した進行を反映するようにする場合。

試してみる — Semver Calculator

フルツールを開く