1

Which files in iOS xcode project should we version on bzr server for version control? And how to properly pull the project on another mac?

Or simply in other words, what files are needed to export a project from one mac to another?

3 Answers3

3

In addition to your code and media files, the main thing you need for Xcode itself is the project.pbxproj file inside the .xcodeproj package.

BJ Homer
  • 48,806
  • 11
  • 116
  • 129
  • This works for all versions of Xcode since Xcode 3.0. Really, everything other than the `xcuserdata` folders should probably be included, but the pbxproj is the only one that's essential. – BJ Homer Apr 03 '12 at 20:24
  • One final clarification: Will it work if some developers have 3.x xcode, and others have 4.x xcode? (I am sorry I am not a native english speaker, so that's why..) –  Apr 09 '12 at 20:32
  • Yes; the `project.pbxproj` file format has not changed from 3.x to 4.x. – BJ Homer Apr 09 '12 at 21:29
0

I'm not sure exactly which files need to be under version control since I don't use Xcode but you can probably find out by executing the "clean" operation or whatever it's called in Xcode to delete all build artifacts. What remains is probably what you need to put under version control.

After that, if you find a particular Xcode file is changing every time you commit and you don't believe you are changing project settings, then that may be a "workspace" file which is not worth keeping under version control and you should add it to the list of ignored files: bzr ignore FILE.

dOxxx
  • 1,540
  • 1
  • 12
  • 28
  • Actually Xcode creates many files that aren't deleted by the "Clean" command. The build directory is not deleted or a couple of ancillary files in the project bundle itself. As another commenter said the only essential file in the project bundle is the "proejct.pbxproj" everything else in will be created as needed. – Mark Apr 03 '12 at 16:00
0

Think about this in a different way. As Git is baked into Xcode, there are a lot of questions about what to put into a .gitignore file such as git-ignore-file-for-xcode-projects. So this gives you a starting point for what is NOT needed for a project under version control.

I'd see how to work this list into the Bazaar equivelent - which funnily enough is called .bzrignore.

Community
  • 1
  • 1
Peter M
  • 7,309
  • 3
  • 50
  • 91