Semantic Versioning | 整形芸能人 ver 2.1.13 の意味するところは?
概要
Semantic Versioning 整形芸能人 2.1.13 の意味するところについて。
「整形芸能人」 の部分には好きな芸能人を思い浮かべてイメージを補強してください
また、ここで「整形芸能人」にたとえているのは理解の促進のためで、整形に対する批判などの意図は一切ありません
Semantic Versioning とは?
バージョン番号の付け方のルールです
基本構成 Major.Minor.Patch
例えば、
整形芸能人 2.1.13
の場合、
2 は Major 番号です。
1 は Minor 番号です。
13 は Patch 番号です。
Major 番号 の意味
APIの変更に互換性がないことを意味します。
つまり、
整形前芸能人 1.x.x
整形後芸能人 2.x.x
は API 互換を保証しませんよ、ということになる。
昔と同じ仕事ができることを保証しません!しかし、昔はできなかった新たな仕事ができますよ!
Minor 番号 の意味
後方互換性があり機能性を追加することを意味します。
つまり、
整形前芸能人 2.1.x
整形後芸能人 2.2.x
は API 互換を維持しつつ新たな機能を追加しましたよ、ということになる。
昔と同じ仕事ができることを保証しつつ、引出(機能)が増えましたよ!
Patch 番号 の意味
後方互換性を伴うバグ修正することを意味します。
つまり、
整形前芸能人 2.2.1
整形後芸能人 2.2.2
は後方互換を維持しつつ、ちょっくらバグっちゃった箇所を修正工事しましたよ、ということになる。
昔と同じ仕事ができることを保証しつつ、ちょっとおかしくなっちゃったところをなおしましたよ!
プレリリースバージョン
プレリリース とは?
プレリリース は通常のリリースの前に行うリリースです。
一般に
Pre-Alpha
Alpha
Beta
Public Beta
RC(Release Candidate)
のような段階があります。
RC が1回で Fix しなかった場合などは、 rc1, rc2 ... のようにインクリメントされます。
http://semver.org/ のルールの場合は、
Patch 番号の直後にハイフンとドットで区切られた識別子を追加します。(任意)
RubyGems のドキュメントでは、ドットつなぎになっています。
ビルドメタデータ
パッチもしくはプレリリースの後ろにプラスとドットで区切られた識別子を追加する。
この識別子はバージョンの優先度に影響を与えません。
[WIP] Major Version 0 の持つ意味
Major 番号が 0 の場合は、開発段階を指し、厳密なルールの外として考える。
逆に言うと、 Version 0 を掲げている間はユーザーからも
「このソフトまだ、 Version 0 系 だから怖くて本格導入できないな」
と、判断される可能性があります。
補足
Nightly Build
開発プロジェクトの最新のソースコードを用いて生成されたビルド。
とりたてほやほや。