私はXcodeに少し問題があり、誰かがこれを巧妙な方法で解決したかどうか疑問に思っていましたか?
シナリオ:
- iOSアプリに取り組んでいる2人の開発者。
- GitHubでホストされている単一のXcodeプロジェクト。
- Debug、TestFlight、Releaseの3つの構成があります。
- 少なくともリリースバージョンでは、WebサービスAPIのホスト名をアプリにコンパイルする必要があります。
私はこのようなコードをAPIラッパーに入れています:
#ifdef CONFIGURATION_Debug
static NSString * const kAPIBaseURLString = @"http://10.10.10.41:8080/api";
#elif CONFIGURATION_TestFlight
static NSString *const kAPIBaseURLString = @"http://9.9.9.9.eu-west1.compute.amazonaws.com:8080/api";
#elif CONFIGURATION_Release
static NSString * const kAPIBaseURLString = @"http://some.production.server";
#else
static NSString * const kAPIBaseURLString = @"http://error-crazy-configuration-must-be-set-in-xcode";
#endif
これはすべてうまく機能しますが、文字列について開発者間でGitの戦いがありDEBUG
ます。それぞれが独自の開発ラボを指しており、ファイルは常に1つのアドレスまたは次のアドレスとしてチェックインされています。その痛み。
このクラスでは重要なコードが定期的に変更されるため、gitの「assume-nochanges」は必要ありません。
ホスト名を引数として渡すことを考えましたが、それによってgitが認識するプロジェクト構造も変更されます。
Xcodeやgitをひねりを加えずにホスト名を設定できるようにする方法についての頭脳はありますか?