基本的な内容ですが複数人でiOS開発するときのやっておけ設定についてです。
#1.cocoaPodsのバージョンを合わせてライブラリ管理する
iOS開発するときのライブラリ管理のデファクトはcocoaPodsですが、
cocoaPods自体のバージョン差異で問題が起こったりします。
rubyのgem管理ツールであるbundlerを使ってcocoaPodsのバージョンを管理できるようにしときます。
bundlerのインストールは以下のコマンドで、
$gem install bundler
インストールできたら開発プロジェクトのルートで
$gem init
を実行するとGemfileが作成されます。Gemfileに開発者内で合わせるバージョンを記述しておきます。
例えば、cocoaPods v0.38.2で統一する場合には以下の様にします。
gem 'cocoapods', '0.38.2'
Gemfileの作成が終わったらbunler経由でcocoaPodsを導入します。
以下のコマンドを叩くとインストールできます。--pathで設定している場所はインストール先です。
$bundle install --path=vendor/bundle
ここまででcocoaPodsのバージョンを合わせることができます。
bundler導入後はvendor/bundle以下にインストールしたcocoaPodsを使う様にしたいので
ライブラリのインストールはbundler経由で以下のように実行してください。
$bundle exec pod install
bundlerを利用することでcocoaPodsのバージョンを合わせてライブラリの管理をすることができます。
ちなみに、以下のコマンドを実行してしまうとシステムにインストールされたcocoaPodsが実行されてしまうので気をつけてください。
$pod install
Circle CI等を導入するときもこのあたりはシステム環境と切り離す必要があるので早めにbundler経由でcocoaPodsの管理をするようにしておくと後々楽かも。
#2.Xcodeのバージョンを合わせる
Xcodeのバージョン差異で問題が発生したりするので開発者同士なるべく合わせるようにしたいですよね。
私がやっているのは、Run Scriptを設定する方法です。
Xcodeの「Build Phases」->「New Run Script Phase」でRun Scriptを追加します。
追加されたRun Scriptに以下のScriptを追加する。
if [[ $XCODE_VERSION_ACTUAL != "0700" ]]; then
echo "different Xcode version."
return -1
fi
上記の数字の部分はXcodeのバージョンを表しています。
開発に使っているXcodeのバージョンに置き換えてください。
上記設定をしておけばXcodeのバージョンが違う場合は警告を出してくれるようになります。
他にも複数人で開発する場合のやっておけ設定あったらコメント等で教えてください。