- バージョニングとは?
- なぜ必要?
- セマンティックバージョニング
- カレンダーバージョニング
- 他のバージョニング
- まとめ
--
ソフトウェアやシステムの開発やリリースにおいて、異なるバージョンのソフトウェアを識別するために使用される番号やラベルのこと
--
- Microsoft Windows 11 Pro 10.0.22621 ビルド 22621
- macOS Monterey 12.6.3
- Chrome 111.0.5563.65
- Notion 2.22.23.12.0.38
とか
--
--
- どのバージョンで発生?
- どのバージョンでは発生しない?
- ユーザ、社内、開発チームそれぞれでコミュニケーションが取りやすい
--
- どのバージョンに何が実装されているか
- 特定のバージョンに戻す
- 前バージョンとの差分を可視化
※多分一番みるやつ
--
メジャー.マイナー.パッチ
- 例: v1.2.3
- 例: 4.5.6
--
- 後方互換性がない変更
- 大きなインパクトのある変更
--
- 小規模な変更
- 後方互換性がある
--
- バグ修正
- 微細な変更
- 後方互換性がある
--
- しっかり運用されていない
- マイナー、パッチで普通に互換性がない
- たまによくある
--
- システムを開発する際には既存のライブラリを使用する
- ライブラリのバージョン管理が必要
- 1.2.3と2.0.0では破壊的変更が行われている可能性が高いため
--
- セマンティックバージョニングが推奨されている
- デフォルトでは「^1.2.3」という記載で設定ファイルに記載される
- メジャーバージョンのみ固定される記載方法
- 2.0.0, 1.3.0, 1.2.4 ,1.2.3がある場合には1.3.0が使用される
--
- 1.2.3と書いてあるけど1.3.0を使用する
- 1.3.0なのに互換性がなかった
- 動かない!
※これを知ったのでLTで話してる
--
年.月.日
- 2023.03.23
- 時間を追加
- 2023.03.23.12
- 一部除去
- 23.03.23
--
- 意味が一目瞭然
- バージョン付与時に悩みがない
--
- 基本的に重複がない
- 時分秒まで含んでいると安全
--
- リリースの時系列を把握可能
- 最新がどれか
- バージョン比較時にどちらが新しいか
--
- アップデートの影響が不明
- 大きな変更?小さな変更?
- 長くなりがち
--
- 「111.0.5563.65」みたいな形式
メジャー.マイナー.ビルド.パッチ
- 名前はないっぽい
--
メジャー・マイナー・パッチ
- 意味が異なる
- 重要、機能追加、修正程度の指針
--
- 1,2,3,4,5...
- シンプルイズベスト
--
- セマンティックバージョニングと日付の組み合わせ
- カレンダーバージョニングの末尾に連番
- とか
--
- α, β, RCとか
- 名前付いていたり
--
- バージョンには意味がある
- 適当につければ良いというものではない
- 運用を考えて付ける