Is the project.xcworkspace file important?
Solution 1:
project.xcworkspace
is a directory of files describing the workspace or projects. Although some of the answers here indicate it is unnecessary and should be ignored for source control, I don't agree, but it's going to be highly dependent upon how you use your environment. Generally, the contents of the project.xcworkspace
directory contains the contents.xcworkspacedata
file, which lists the projects that are included as top-level entities in your project, an xcuserdata
directory, which contains each user's settings (should be ignored for source code controL), and xcshareddata
, which is data shared by users who share a project, and should be under source control.
In environments where you don't share workspaces, or where you use simple workspaces, you can ignore these as well, however in environments where you put related projects in the same workspace and share that configuration, you may well want to keep these.
Solution 2:
I don't think project.xcworkspace
under xx.xcodeproj
is important enough to be added to SCM because it can be automatically recreated by Xcode if you delete it. Actually it has nothing to do with Cocoapods.
If you create a workspace named x.xcworkspace
, create a project named y.xcodeproj
and add the project to x.xcworkspace
at the same time; then you will find that there is no project.xcworkspace
created under y.xcodeproj
directory.
However, if you open y.xcodeproj
with Xcode, project.xcworkspace
is automatically created under y.xcodeproj
folder by Xcode.