Semver コンパレータ

セマンティックバージョン番号を比較します。semver 文字列を解析およびソートし、バージョンが範囲を満たしているかを確認し、メジャー/マイナー/パッチの違いを理解します。

Compare Two Versions

1.2.3
OLDER
2.0.0-beta.1
MAJOR version change
MajorMinorPatchPre-release
1.2.3123
2.0.0-beta.1200beta.1

Version Range Check

1.5.0 satisfies ^1.2.0

Sort Version List

One version per line — sorted newest first

13.0.0-beta.1beta.1
22.1.0
32.1.0-11
42.0.0-rc.1rc.1
51.2.3
61.0.0
71.0.0-betabeta
81.0.0-alphaalpha

Semver コンパレータの使い方

  1. 1比較する 2 つのバージョン番号を入力します(例:1.2.3 vs 2.0.0)。
  2. 2どちらが新しいかと何が変わったか(メジャー/マイナー/パッチ)を表示します。
  3. 3semver バージョンのリストをソートします。
  4. 4バージョンが ^1.2.0 のような範囲制約を満たしているかを確認します。
Zenovayアナリティクス

創業者のためのアナリティクス。

  • リアルタイムの訪問者トラッキング
  • プライバシーファースト、クッキーバナーなし
  • 2分でセットアップ
Zenovayを見る

よくある質問

セマンティック バージョニングとは何ですか?
セマンティック バージョニング (semver) は、MAJOR.MINOR.PATCH の形式を使用したバージョニング規約です。MAJOR: 互換性のない API 変更 (破壊的)。MINOR: 新しい後方互換機能。PATCH: 後方互換バグ修正。プレリリース版はハイフンと識別子を追加: 1.0.0-alpha、1.0.0-beta.1、1.0.0-rc.1。ビルド メタデータはプラス記号を追加: 1.0.0+build.42。semver.org で Tom Preston-Werner (GitHub 共同創設者) によって定義されました。
semver バージョンはどのように比較されますか?
バージョンは左から右に比較されます: MAJOR 最初、次に MINOR、次に PATCH。これらが等しい場合、プレリリース版はリリースより優先度が低い: 1.0.0-alpha < 1.0.0。プレリリース識別子は数値の場合は数値として、文字列の場合は辞書順で比較されます。以前のフィールドが一致する場合、より長いプレリリースの優先度が高い: 1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2。
npm バージョン範囲演算子は何を意味しますか?
^1.2.3 (カレット): 互換性があり、MINOR および PATCH アップデートを許可 — ≥1.2.3 <2.0.0。~1.2.3 (チルダ): ほぼ等価、PATCH アップデートのみを許可 — ≥1.2.3 <1.3.0。1.2.x または 1.2.*: 任意の PATCH。* または x: 任意のバージョン。>1.2.3、>=1.2.3、<2.0.0: 明示的な範囲。1.2.3 - 2.3.4: 包括的な範囲。これらの範囲は npm、Yarn、pnpm、および Renovate や Dependabot などのツールによって評価されます。
MAJOR vs MINOR vs PATCH をいつインクリメントするべきですか?
MAJOR (x.0.0): 互換性のない API 変更を行う場合 — 削除された関数、変更された関数シグネチャ、破壊的な動作変更、削除された CLI フラグ。MINOR (1.x.0): 後方互換的な方法で機能を追加する場合 — 新しい関数、新しいオプション パラメーター、新しい構成オプション。PATCH (1.0.x): 後方互換バグ修正を行う場合 — 不正な動作の修正、セキュリティパッチ、API の変更がないパフォーマンス向上。
プレリリースとビルド メタデータの違いは何ですか?
プレリリース (1.0.0-alpha.1): バージョンの優先度に影響 — 1.0.0-alpha.1 < 1.0.0。alpha、beta、リリース候補に使用されます。ビルド メタデータ (1.0.0+build.1): バージョン優先度に影響しない — 比較目的では 1.0.0+build.1 == 1.0.0。ビルド メタデータは CI ビルド番号、git コミット ハッシュ、またはビルド タイムスタンプに使用されることがよくあります。semver の仕様に従い、ビルド メタデータのみで異なる 2 つのバージョンは等しい。