devtools-hub

Semver Calculator

セマンティックバージョンのパース・バンプ・比較・範囲チェック

npmバージョン管理開発ツール

バージョン文字列を入力するだけで major/minor/patch/prerelease を分解表示。patch/minor/major バンプ後のバージョンを即計算。2バージョンの大小比較と、^1.2.0 や ~1.2.0 などの範囲指定チェックにも対応。

広告

Semver Calculator

バージョン解析 & バンプ

✓ valid
major1
minor2
patch3
patch1.2.4
minor1.3.0
major2.0.0

バージョン比較

<

1.2.31.3.0 より 古いです


バージョン範囲チェック

の範囲内か
1.2.5^1.2.0 の範囲に含まれます

Features

  • semver 文字列のバリデーション・パース
  • major / minor / patch / prerelease / build の分解表示
  • patch / minor / major バンプ後バージョンを即計算
  • 2バージョンの大小比較
  • ^ ~ >= <= > < * 範囲指定でバージョンが含まれるか判定


セマンティックバージョニングの仕様と実践

Semantic Versioning(semver)はソフトウェアのバージョン番号に意味を持たせる標準仕様です。MAJOR.MINOR.PATCHの3番号で互換性の変化を伝え、依存関係の管理を安全にします。npm・pip・Cargo など主要パッケージマネージャーが採用されています。

MAJOR・MINOR・PATCH の意味

MAJOR(メジャー): 後方互換性のない変更(破壊的変更)。APIの削除・変更、動作の根本的な変化など。MINOR(マイナー): 後方互換性のある機能追加。新APIの追加、既存機能の拡張など。PATCH(パッチ): 後方互換性のあるバグ修正のみ。バージョン1.0.0から始め、MAJORが上がったらMINOR/PATCHは0にリセット、MINORが上がったらPATCHは0にリセットします。

プレリリース版とビルドメタデータ

ハイフン付きはプレリリース版: 1.0.0-alpha, 1.0.0-alpha.1, 1.0.0-beta.2, 1.0.0-rc.1。プレリリース版は正式版より優先度が低く、1.0.0-alpha < 1.0.0-rc.1 < 1.0.0 となります。プラス記号後はビルドメタデータ: 1.0.0+20240101。ビルドメタデータはバージョン比較で無視されます。

npm の範囲指定記法

^1.2.3 はMAJORを固定してMINOR以上のアップデートを許可(>=1.2.3 <2.0.0)。~1.2.3 はMAJOR・MINORを固定してPATCHのみ許可(>=1.2.3 <1.3.0)。>=1.0.0 <2.0.0 のような明示的な範囲も使えます。* や latest は最新版。MAJORが0の場合(0.x.y)は開発中として扱われ、^0.2.3は>=0.2.3 <0.3.0と解釈されます。

バージョン管理のベストプラクティス

バージョン1.0.0を公開したら仕様変更を最小限に。破壊的変更がある場合は必ずMAJORを上げます。CHANGELOGを整備してバージョン間の差分を記録します。リリース前に0.x.yで実験的リリースを行い安定したら1.0.0に移行。Git タグとバージョンを一致させる(v1.2.3)と管理が楽になります。

広告

Related Tools

Slug Generator

日本語・英語テキストを URL-safe スラグに変換

Web開発テキスト開発ツール

使ってみる →

BOOTH

CSS to Tailwind

CSS プロパティを Tailwind CSS クラスに変換

CSSTailwindWeb開発開発ツール

使ってみる →

BOOTH

User Agent Parser

UA 文字列を解析してブラウザ・OS・デバイス情報を即表示

ブラウザWeb開発開発ツール

使ってみる →

BOOTH

このツールを共有する