I updated the Subversion client on my system to 1.8.3. I did a checkout of my repository from Xcode 5's Source Control
menu. Then in terminal opened that directory and did an svn update
command just to check. I get this message -
The working copy at '/Path' is too old (format 29) to work with client version '1.8.3 (r1516576)' (expects format 31). You need to upgrade the working copy first.
If I upgrade my copy, I lose access to the Source Control menu options because the version is too high for XCode 5.
Later on I found this XCode 5 Features Link which says that SVN for Xcode is at version 1.7.9.
- I dont understand how there are 2 versions of SVN on my system ( one maintained by Xcode that is 1.7.9 and other at 1.8.3)
- How do I work with 1.8.3 and Xcode 5. I really want to use XCode's GUI.
Writing to 'defaults' won't work for Xcode 5. Newer version of Xcode ship with it's own SVN binary located in:
You need to replace this binary to upgrade Xcode's SVN client to 1.8. Assuming your new SVN client is located in /usr/local/bin/ (default brew install path) type the following in a terminal:
I did this with Xcode 5.1 and SVN 1.8.8, haven't had any problems at all.
The above solution ultimately did work for me for Xcode 5.1; I have shortened the code above, feel free to change your directories appropriately (e.g., since I am using MacPorts my svn binaries are in
/opt/local/bin
):In addition to this, try deleting your
project.xcworkspace
if you are running into trouble after updating SVN, and make sure you are running the correct version of Xcode! (I was still running Xcode 5.1 BETA while attempting to validate changes I made to the Xcode.app directory... Stupid mistake but it took me a while to figure out)You can set the path to XCode's subversion client by setting XCSubversionToolPath, e.g. (replace with actual svn 1.8 path):