メモログ

⛰ 塵が積もって山とならないメモのログ 👄

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もご参考いただければ。

というメモ。