メモログ

gruntでXcodeプロジェクトのVersion/Buildを変更する

Xcode_General_setting

Xcode プロジェクトの Version(CFBundleShortVersionString)、Build(CFBundleVersion)の値は Xcode の UI で簡単に変更することができます。しかし、それを Grunt タスクで変更するようにしたい。ということで、そのための Grunt タスクを作成しました。grunt-plistbuddyです。

Xcode プロジェクトの Version/Build の文字は、info.plist(AppName-Info.plist とか)で管理されています。PlistBuddy は、plist ファイルを扱うためのコマンドで、詳細はPlistBuddy(8) Mac OS X Manual Pageに書かれています。

grunt-plistbuddy のタスクは PlistBuddy を実行することで plist に記述された値を変更します。

Xcode プロジェクトの Build の値を変更する場合は下記のような感じに設定します。あ、grunt.initConfig の中で。

plistbuddy: {
  version: {
    method: 'Set',
    entry: ':CFBundleVersion',
    value: '1.0.1',
    src: 'AppName-Info.plist'
  }
}

これは下記のようなコマンドを実行するのと同じになります。

/usr/libexec/PlistBuddy -c "Set :CFBundleVersion 1.0.1" yourApp-Info.plist

Version の値も同様に変更することができます。Xcode 上で Version の値が入っていない場合は、あらかじめ追加しておく必要があります(もしくは PlistBuddy で Add を実行する)。

plistbuddy: {
  versionShort: {
    method: 'Set',
    entry: ':CFBundleShortVersionString',
    value: '1.0',
    src: 'AppName-Info.plist'
  }
}

詳細はmemolog/grunt-plistbuddyもご参考いただければ。

というメモ。

私について

Yutaka Yamaguchi
東京在住。TypeScript, Node.js, Reactなどフロンエンドが主力。Perlも書く。SwiftやRubyも過去には使ってた。過去のTOEIC 860くらい。