SemVer計算ツール
セマンティックバージョン管理には5つの構成要素があります:MAJOR.MINOR.PATCH、および任意で使用可能な-prereleaseおよび+buildのサフィックスです。この計算ツールはバージョン文字列を入力し、semver 2.0.0の文法規則に基づいて検証したうえで、それを構成要素に分解し、次のメジャー・マイナー・パッチ・プレリリース(-rc.1)バージョンを並べて表示します。
バージョンをアップグレードする方法
-
1
現在のバージョンを貼り付けてください
`1.2.3`、`1.2.3-rc.1`、`2.0.0-alpha+exp.sha.5114f85`およびその他のsemver 2.0.0形式を受け入れます。
-
2
パースされた各部分を確認する
このツールは文字列をメジャー、マイナー、パッチ、プレリリース、ビルドメタデータに分解するので、期待どおりに解釈されたか確認できます。
-
3
次のバージョンを比較する
次のメジャー、マイナー、パッチを同時に表示し、さらにプレリリース候補(`-rc.1`)も表示します。マイナーを上げるとパッチは0にリセットされ、メジャーを上げるとマイナーとパッチの両方がリセットされます。
-
4
新しいバージョンをコピーする
変更内容に合ったバージョンを選んで、`package.json`、`Cargo.toml`、gitタグ、またはリリースノートで使ってください。
この計算ツールが表示する内容
1.2.3のようなバージョンの場合、このツールは提案される次の4つのバージョンを表示します:
| 種類 | 1.2.3 が変わる先 |
|---|---|
| メジャー | 2.0.0 |
| マイナー | 1.3.0 |
| パッチ | 1.2.4 |
| プレリリース | 1.2.4-rc.1 |
マイナーを上げるとパッチは0にリセットされ、メジャーを上げるとマイナーとパッチの両方が0にリセットされます。プレリリースの提案は、次のパッチをリリース候補として付けます。npm versionのようなコマンドラインツールには、リリーススクリプトで必要な場合に使えるさらに多くの操作(premajor、preminor、prepatch、および1.2.3-beta.1が1.2.3-beta.2になるような、その場でのプレリリースのインクリメント)があります。
適用される優先順位ルール
- プレリリースの優先順位はリリースよりも低い:
1.0.0-rc.1<1.0.0。 - 数値型の識別子は数値的に比較され、英数字の文字列は辞書順に比較されます:
1.0.0-alpha.2<1.0.0-alpha.11。 - ビルドメタデータ(
+sha.abc)は優先順位において無視されます。1.0.0+20240101および1.0.0+20250101は同等のバージョンです。 - 数値識別子における先頭のゼロは無効です。
1.0.0-rc.01はsemverではありません;rc.1を使用してください。
範囲オペレータのチートシート
^1.2.3:バージョンが1.2.3以上かつ2.0.0未満のすべてのもの(同じ主要バージョンに属するもの)。~1.2.3:バージョンが1.2.3以上かつ1.3.0未満のすべてのもの(同じマイナーバージョンに留まる)。>=1.2.3 <2.0.0、明示範囲。0.xは特別なケースです:npmでは^0.2.3を>=0.2.3 <0.3.0と見なしています。これは、バージョン1.0以前のバージョンが不安定であると判断されているためです。
メジャーバージョンを上げるタイミング
ダウンストリームの利用者に影響する変更ではメジャーを上げます:公開APIの削除、関数シグネチャの変更、デフォルト動作の変更、設定キーのリネームなどが該当します。マイナーは追加的な変更のみに使います。パッチは契約(インターフェース)を変えないバグ修正のためのものです。
よくある質問
いいえ。01.2.3は無効です。各数値識別子は、リテラルの「0」を除き、先頭のゼロを含まない非負の整数でなければなりません。
前回の1.0.0-rc.Nからパッチバウンプを使用してください、semverはこれをプレリリース版からリリース版への移行として処理します。または、バージョンを明示的に設定しタグを付与することもできます。
いいえ。Buildメタデータは+の後に配置され、順序付けでは無視されます。Prereleaseは-の後に配置され、リリースよりも低い優先度に設定されます。ほとんどのレジストリでは1.2.3-rc.1+build.77のように両方を同時に使用できます。
はい、semverでは連続したメジャーバージョンを経る必要はありません。3.xから直接5.xに移行することも可能ですが、ほとんどのチームでは特に大きな変更を示すためにのみ使用しています。
関連ツール
ASCII表リファレンス
0から127までの完全なASCII表です。NUL、LF、DELなどの制御コードを含め、各文字の10進数、16進数、8進数、2進数、HTML数値文字参照を表示します。
HTML文字参照
HTMLエンティティの検索可能なリスト、その名称コードおよび数値コード、および特殊文字や記号のワンクリックコピー機能を提供します。
JavaScript圧縮ツール
変数名のリネーム、空白の削除、デッドコードの除去、定数畳み込みでJavaScriptを圧縮し、より小さなバンドルを作成します。
キーボードショートカット一覧
macOS、Windows、Linux向けに、VS Code、Chrome、GNU Readlineを使うBashの公式資料に基づく既定ショートカットを検索できます。
FPS カウンター
requestAnimationFrame でブラウザーの FPS を測定。平滑化、最小・最大フレームレート、警告しきい値、任意のグラフに対応。ローカルで動作し、アップロードも API も不要です。
プレースホルダー画像ジェネレーター
1〜4000 pxの画像に色と文字を設定し、PNGで保存できます。外部URLとHTMLもコピーできます。
このツールは他の言語でも利用できます
- SemVer-kalkylator [SV]
- SemVer-calculator [NL]
- 세미버 계산기 [KO]
- SemVer Calculator [ID]
- SemVer Rechner [DE]
- أداة حساب SemVer [AR]
- Calculadora SemVer [PT]
- Calculadora SemVer [ES]
- Kalkulator SemVer [PL]
- เครื่องคำนวณ SemVer [TH]
- Bộ tính toán SemVer [VI]
- Calculateur SemVer [FR]
- Калькулятор SemVer [RU]
- SemVer Hesaplayıcı [TR]
- SemVer计算器 [ZH]
- SemVer Calculator [EN]
- Calcolatore SemVer [IT]