セマンティックバージョニングとは、ソフトウェアのバージョン番号を、機能の追加や変更の大きさを示す意味的なルールに基づいて命名する方法です。
目次
ざっくりとした説明
バージョンの形式を以下のようにドットで区切り、3つの領域で管理していくものです。
[メジャーバージョン] . [マイナーバージョン] . [パッチバージョン]
- メジャーバージョンは、APIの変更に互換性がない場合にバージョンを上げます
- マイナーバージョンは、後方互換性があり機能性を追加した場合にバージョンを上げます
- パッチバージョンは、後方互換性を伴うバグ修正をした場合にバージョンを上げます
なぜセマンティック バージョニングを使用するのか?
- 「Firetruck」と呼ばれるライブラリについて考えてみましょう。
- それはセマンティック バージョニングされた「Ladder」というパッケージを必要とします。
- Firetruckを作成した時、Ladderはバージョン3.1.0でした。
- Firetruckは、バージョン3.1.0時に導入されたいくつかの機能を使用しているので、Ladderが3.1.0以上4.0.0未満の範囲で安全に依存性を指定できます。
- Ladderのバージョン3.1.1と3.2.0が利用可能になった時、それらをパッケージ管理に取り込んでリリースすることができ、それらが既存の依存するソフトウェアと互換性があるということは明確です。