2016-09-09 9 views
1

私は大規模なXcode iOSプロジェクトで作業します。クリーンな状態から完全にコンパイルするのに約20分かかります。私はデバッグモードでコンパイラの最適化を無効にしただけでなく、dYSMも無効にしています。これはコンパイル時にこれが最も速いと思います。たびに私はgit checkout別のブランチ、単純な1つのファイルも変更、Xcodeはすべてを再コンパイルする必要があり、それは永遠にかかると私を遅くする。それを無効にするために私ができることはありますか?ありがとう!私はGit Checkoutを毎回再コンパイルしないようにします

+0

最適化を無効にすると、ソースコードの複雑さによってはコンパイル時間が長くなる可能性があります。異なる支店を持つ複数のレポジトリをチェックアウトします。ファイルのタイムスタンプを更新するたびに、そのタイムスタンプは再コンパイルされます。 – xaxxon

+0

複数のreposを持つことは、私が現在やっていることです。ここで推奨されているビルド設定から '-O'設定を削除しました:https://labs.spotify.com/2013/11/04/shaving-off-time-from-the-ios-edit-build-test- cycle/ –

+0

タイムスタンプが更新されたすべてのファイルを再コンパイルしますか? –

答えて

1

私が観察したところでは、git checkoutはファイルの作成/変更日時を現在にリセットしています。私はXcodeがこれが変わったと判断し、ファイルがその背後で変更されたという信号として受け取ると考えています。

+0

ローカルのリポジトリにあるすべてのファイルの作成/変更がファイルをリセットすることを意味しますか? git側で無効にする方法はありますか? –

+0

@MathisHard http://stackoverflow.com/questions/2458042/restore-files-modification-time-in-git – matt

+0

ここにはアイデアがあります。手動で別のブランチから異なるファイルだけをチェックアウトすることができます。だから、彼らは自分たちの日付をリセットし、再コンパイルするだけです(私の理論がXcodeのやり方について正しいのであれば)。 – matt

関連する問題