kmsgのバージョン管理
日付ベースの形式、正式な値、リリースコマンド、互換性を説明します。
更新 2026年7月27日GitHubで編集
kmsgは日付を含むバージョン形式を採用します。
MAJOR.YYMMDD.PATCH_COUNT
例:
1.260727.0
正式な値
リポジトリ直下のVERSIONが唯一の正式な値です。ファイル内には先頭のvを付けません。
ビルド時にSwiftPMプラグインが形式を検証し、BuildVersionを生成します。kmsg --version、kmsg status、リリース成果物は同じ値を使います。
各フィールド
MAJOR: 破壊的変更または大きな節目で増加YYMMDD: リリース日PATCH_COUNT: その日の最初は0、追加リリースごとに増加
Gitタグにはvを付けます。
v1.260727.0
運用ルール
- タグ作成前に
VERSIONを更新 - 新しい日付の最初のリリースは
PATCH_COUNT=0 - 同日の追加リリースはpatch countだけを増加
- 日付が変わればpatch countを
0へ戻す - バイナリの報告値とタグが異なる場合、リリースを失敗させる
バージョン更新
VERSIONを手作業で編集せず、プロジェクトのコマンドを使います。
make release-patch
make release-major
変更前の確認:
scripts/headatever.sh patch --dry-run
自動化は、次のバージョン検証、VERSION更新、chore(release): v<version>コミット、注釈付きタグ作成を一つの流れとして実行します。
完全な手順は英語版バージョン管理を参照してください。