【Xcode/Fastlane】バージョンとビルド番号を自動でインクリメントする方法!increment_version_number

この記事からわかること
- iOS/Xcodeの自動化ツール:Fastlaneの使い方
- 自動でビルドとバージョン番号をインクリメントする方法
- increment_build_numberアクションとincrement_version_numberの違い
- agvtool:Apple Generic Versioning Toolとは?
- Your current version () does not respect the format A or A.B or A.B.Cエラーの原因
index
[open]
\ アプリをリリースしました /
環境
- Xcode:15.0.1
- watchOS:10.0
- Swift:5.9
- macOS:Sonoma 14.1
- fastlane:2.221.0
Xcode/iOSアプリでFastlaneを使用してビルド番号とバージョン番号をインクリメントする方法をまとめていきます。導入やセットアップの方法は以下の記事を参考にしてください。
ビルド番号とバージョン番号は「General」に表示されている以下の部分です。

ビルド番号をインクリメントする:increment_build_number
公式リファレンス:increment_build_number
Xcodeのビルド番号をインクリメントするにはincrement_build_number
アクションを使用します。build_app
アクションの前に記述することでビルド前に値を増加させることができます。
これでこのレーンを実行するたびにビルド番号が自動でインクリメントされるようになります。もしエラーが発生する場合は「Build Settings」>「Versioning」>「Versioning System」を「Apple Generic」に変更してみてください。

agvtool:Apple Generic Versioning Toolとは?
ビルド番号とバージョン番号をインクリメントする処理は内部的に「Apple Generic Versioning Tool」を使用しているようです。これはAppleが提供してるコマンドラインツールで、Xcodeプロジェクトのバージョン関連を管理する役割を持っています。
公式リファレンス:Automating Version and Build Numbers Using agvtool
そのためプロジェクトルートでagvtool
の以下コマンドを実行するとビルド番号とバージョン番号を同時にインクリメントすることができます。
引数に番号を指定すればその番号にすることも可能です。
バージョン番号をインクリメントする:increment_version_number
公式リファレンス:increment_version_number
Xcodeのバージョン番号をインクリメントするにはincrement_version_number
アクションを使用します。build_app
アクションの前に記述することでビルド前に値を増加させることができます。
Your current version () does not respect the format A or A.B or A.B.C
バージョン番号をインクリメントしようとすると以下のエラーが発生してしまいました。翻訳すると現在のバージョン () は形式 A、A.B、または A.B.C を尊重していません。
になるのですが、正しい形式になっていても発生しています。
「Build Settings」>「Versioning」>「Versioning System」を「Apple Generic」に変更してみてもエラーは消えずagvtool
のコマンドを使用してバージョン番号をあげようとしてもうまく動作しませんでした。agvtoolがうまく動作していないのかも?
ちなみに上記の結果は以下でした。
現状解決することができなかったので一旦見送っていますが、解決次第追記したいと思います。
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。