2012-06-08 1 views
54

私はシェルスクリプトを使ってコマンドラインxcodebuildをやっています。私の問題は、開いて、xx.xcodeprojファイルを一度閉じた後、それがうまく動作するコマンドを使用する場合です。project.xcworkspaceファイルは重要ですか?

何らかの形でファイルが変更された場合は、このproject.xcworkspaceが変更された唯一のファイルです。このファイルは有効ですか?バージョンコントロールにチェックする必要がありますか? これは問題を引き起こしますか?

.pbxprojと同じくらい重要だと聞きましたが、これは本当ですか?

xcodeプロジェクトファイルのさまざまなファイルの役割と責任について話している有効なドキュメントが見つかりませんでした。そのことを理解するのに役立つリンクを提供してください。

答えて

89

project.xcworkspaceは、ワークスペースまたはプロジェクトを記述するファイルのディレクトリです。ここでの答えのいくつかは不要であり、ソース管理のために無視する必要があることを示していますが、私は同意しませんが、環境の使い方に大きく依存することになります。一般に、project.xcworkspaceディレクトリの内容には、contents.xcworkspacedataファイルが含まれています。このファイルには、プロジェクト内のトップレベルエンティティとして含まれるxcuserdataディレクトリ(各ユーザーの設定が含まれています)と、xcshareddataこれは、プロジェクトを共有するユーザーが共有するデータであり、ソース管理下にある必要があります。

ワークスペースを共有しない環境や単純なワークスペースを使用する環境では、これらの設定も無視できますが、関連するプロジェクトを同じワークスペースに配置してその設定を共有する環境では、これらを保つ。

+6

Cocoa Pod(pod install)を使用すると、project.xcworkspaceファイルが作成されます。ポッドワークスペースを作成するので、ポッドを介してインストールしたばかりのものを希望する場合は、プロジェクトファイルの代わりにproject.xcworkspaceファイルを開く必要があります。 – LevinsonTechnologies

+6

@LevinsonTechnologies OPは、プロジェクトの 'Foobar.xcodeproj'最上位フォルダーのサブフォルダーを参照しています。そのサブフォルダは、_literally_という名前の 'project.xcworkspace'です。 CocoaPodsが作成し、あなたが参照していることは、 'Foobar.xcodeproj'と同じレベルに存在する' Foobar.xcworkspace'という別の_top-level_フォルダです。 2つのことを混同しないでください!私の推測では、Xcodeは常にワークスペースが必要で、サブクラスは.xcodeprojでしか動作しない限り、Xcodeが作成して保持する「隠し」ワークスペースの一種です。 – herzbube

関連する問題