You may work in a team development environment in which some team members may need to use an Xcode release different from the one you use; for example, some developers may need to use Xcode 2.5 while you may want to use Xcode 3.0 to take advantage of features that are not available in earlier releases. If you use Xcode 3.0 work on the same projects that an Xcode 2.5 user also works on, you have to make sure that you don’t use Xcode 3.0 features on those projects; otherwise, your Xcode 2.5–using colleague may have trouble working on or even opening the projects.
To help keep shared projects usable by developers using different Xcode releases, Xcode allows you to specify the release with which a project must remain compatible. This feature is based on project formats. A project format tells Xcode how to store the project configuration into the project file inside the project package (see “Project Packages” for details). A project configuration is the set of development features, project attributes, and project and target build settings used in a project.
Project formats allow you to specify an Xcode release with which a project must be compatible. This feature lets you use a later release of Xcode to work on a project created with an earlier release while ensuring that the project remains compatible with the earlier release.
Note: Another approach to working on a development team that must use multiple Xcode releases is to use Xcode Coexistence, a feature that allows developers to install multiple Xcode releases on one computer. For example, you can have Xcode 2.5 and Xcode 3.0 on your computer, allowing you to work on Xcode 2.5–based projects and Xcode 3.0–based projects side by side.
The following sections describe how to choose a project format for a project and how to view and resolve conflicts that arise between the project configuration and the chosen format.
Specifying the Project Format
Viewing Project Format Conflicts
You choose a project format for a project in:
The Project Format pop-up menu lists the project formats Xcode supports. When you choose a project format that doesn’t support the project configuration (for example, when a build setting isn’t supported by the chosen format), Xcode notifies you of the incompatibility as shown in Figure 7-2.
To view the details of the incompatibility, click the Show Conflicts button (this button is available only when there’s at least one conflict). See “Viewing Project Format Conflicts” for more information.
After choosing a project format, if you make use of features that are not supported by that format, Xcode notifies you of the existence of conflicts in the status bar of the project window, as shown in Figure 7-3.
Important: When using cross-project references, ensure that the referenced projects use the same project format as the referencing project. If the project formats differ, you may encounter build errors.
When a project uses Xcode features that are not supported by the chosen project format, Xcode displays the unsupported features (or conflicts) in the project format conflicts window, shown in Figure 7-4.
You have two options for solving these conflicts:
Change the project format to one that supports the feature that’s causing the conflict.
Other developers working on the same project must use a release of Xcode that supports the same project format.
Change the project configuration so that it doesn’t use the feature that’s causing the conflict.
Last updated: 2008-02-08