Repository navigation
OTR_VersioningPolicy
nishi_74322014 edited this page Oct 27, 2026
·
1 revision
-
TOP > 使い方 > Open棟梁のバージョン番号付与ポリシー
- NuGet導入、NuGet登録
- Open棟梁のバージョン番号付与ポリシー
Open 棟梁のバージョン番号の付け方。
- 基本的に、半年単位の定期リリースの際にバージョンアップする。
- リリースのタグは
03-30のような「メジャー 2 桁-マイナー 2 桁」の形式で、パッケージの版は3.3.0のような SemVer 形式で表す。
major.minor.build.revision の形式。AssemblyFileVersion・AssemblyInformationalVersion もこの値を使う。
| 桁 | 付け方 |
|---|---|
| major | 後方互換は維持しているので、コンセプトの変更や、5 年以上のマイナー更新の継続などでインクリメント |
| minor | 半年単位のリリースでインクリメント |
| build | NuGet リリースの度にインクリメント(主にリリース作業のミスなどで上がる) |
| revision | 使用しない(常に 0) |
major.minor.build(AssemblyVersion の先頭 3 つと同じ)。プレリリース版は -alpha1 などのサフィックスを付ける。
- バージョンの定義は 2 系統あり、
0_SetVersion.ps1で一括更新する。
| 定義箇所 | 書き込む値(例) |
|---|---|
Directory.Build.props の OpenTouryoVersion(net10.0 の版) |
3.3.0-alpha1(指定値そのまま) |
net48 の AssemblyInfo.cs の AssemblyVersion
|
3.3.0.0(サフィックスを落とし 4 桁目を 0) |
- サフィックスはパッケージの版にだけ入り、アセンブリの版には入らない。
-
同じパッケージに入る net48 と net10.0 のアセンブリの版は揃える。 パッケージ作成のバッチ(
_NuGetPack.bat)がずれを検査し、ずれていれば停止する。 - 試すときはプレリリース版で公開し、正式な番号(
3.3.0など)はタグ付きのコミットのために取っておく。
- AssemblyVersion の更新はリリースごとに任意(.NET の仕様上)、PackageVersion の更新は必須(NuGet の仕様上)。
そのため、2 つが一致しないことがある。
| リリース | 方針 | 利用側の作業 |
|---|---|---|
| 定期リリース、修正が上位パッケージまで広範囲に及ぶ場合 | 2 つの番号を一致させる | 上位パッケージの参照をバージョンアップする。アセンブリ・バージョン・リダイレクトが要ることがある |
| 不定期・緊急リリースで、下位(Public など)だけを直す場合 | PackageVersion だけを上げ、AssemblyVersion は据え置く | 最上位のアプリから新しい版の参照を追加して上書きする。リダイレクトは不要 |
- 版の更新は手作業だと追随漏れが起きやすいので、エージェントにも
0_SetVersion.ps1を使わせる(-WhatIfで確認してから実行)。 - タグ付けと公開は人が行う。
Tags: 再構築
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。