• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Xcode project root and Subversion
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Xcode project root and Subversion


  • Subject: Re: Xcode project root and Subversion
  • From: Andrew Pontious <email@hidden>
  • Date: Sat, 4 Apr 2009 13:33:16 -0700

On Apr 3, 2009, at 12:01 PM, Jim Prouty wrote:

(Using Xcode 3.1.2 and Subversion 1.5.6)

The root of my repository is checked out into a trunk folder parallel to my
project folder:


full path to source:          /Source/IgorDev/IgorSrc6.1/trunk
full path to project folder:  /Source/IgorDev/IgorSrc6.1/Igor6.1Xcode
full path to project file:
/Source/IgorDev/IgorSrc6.1/Igor6.1Xcode/Igor61.xcodeproj

My project root is set to:    <Project File Directory>/..

Which works out to:          /Source/IgorDev/IgorSrc6.1/

I don't have any Subversion files checked out into
/Source/IgorDev/IgorSrc6.1/ (the trunk of the entire repository is below
that in /Source/IgorDev/IgorSrc6.1/trunk).

Do you mean by that that /Source/IgorDev/IgorSrc6.1/ is a directory you made yourself, not something you checked out? If not, you're going to have problems in Xcode 3.0 and up.


What Xcode requires in 3.0 and up is that whatever directory is pointed to by the project root is a single checkout from an SCM repository. This was done to reduce the amount of work Xcode needs to do (and CPU it needs to take up) to do SCM operations.

So you can have a directory setup like this, where CheckoutDirectory was checked out from your SCM system:

CheckoutDirectory/MyProject/MyProject.xcodeproj
CheckoutDirectory/OtherStuff/

and if your project root is set to "../", then everything under CheckoutDirectory is updated, including both MyProject/ and OtherStuff/.

However, if you have a directory setup like this, where CheckoutDirectory1 and CheckoutDirectory2 are separate checkouts from different places in your SCM repository:

LocalDirectory/CheckoutDirectory1/MyProject.xcodeproj
LocalDirectory/CheckoutDirectory2/OtherStuff/

then if your project root is set to "../", Xcode does what you describe immediately below: skip the directory, because it expects whatever directory is pointed to to be a checked-out directory from your SCM system, and LocalDirectory/ isn't.

update /Source/IgorDev/IgorSrc6.1 revision HEAD
	Skipped /Source/IgorDev/IgorSrc6.1

This isn't even mentioning whether Igor6.1Xcode/Igor61.xcodeproj is under source control. In general, you should really check your Xcode project into source control if you're using it for development. And on top of that, Xcode requires that the project root directory be one of the directly directories above the project directory (i.e. ../, or ../../, or ../../../, etc.), so you can't, as you might have wanted to do above, set the project root directory to an entirely unrelated directory.


Not being able to handle multiple SCM checkout directories from a single Xcode project is a known issue.



On Apr 3, 2009, at 3:25 PM, Quincey Morris wrote:

Also, Xcode SCM is a little confusing to set up, because you typically need to set up your project files (xcodeproj, source, etc) "locally", then import that into your repository, then discard the original files and check out all the project files from the repository. If you omitted that last step, then the SCM part won't work.

This is true of any files you wish to put into an SCM system, at least systems like CVS and Subversion. You create the files locally, import them, then check them out. That is not an Xcode-specific workflow.


-- Andrew
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: Xcode project root and Subversion
      • From: Quincey Morris <email@hidden>
References: 
 >Xcode project root and Subversion (From: Jim Prouty <email@hidden>)

  • Prev by Date: Re: Install only x-code from iPhone SDK
  • Next by Date: Re: Install only x-code from iPhone SDK
  • Previous by thread: Re: Xcode project root and Subversion
  • Next by thread: Re: Xcode project root and Subversion
  • Index(es):
    • Date
    • Thread