Well after trying to find a nicer looking client than SVNx ( dont get me wrong SVNx does a great job but its UI needs a bit of an overhaul) I found Versions
I decided to try it out even though it is still a beta. And well going on first impressions it looks nice, is intuitive to use and the interface is laid out in an easy to understand manner.
On looking at the preferences pane I saw that I was using Subversion 1.4.4 which gets installed when XCode does. The only downside is that XCode installs the Subversion dylibs and executables in non standard locations.
So after a bit of Google searching i found the 1.5.4 OS X universal installer package, Downloaded it and installed it. After checking the terminal for a version number it was still at 1.4.4 😦 not what I was expecting.
So off to google again. I found a handy little bunch of commands on one of the apple mailing lists which will move aside the 1.4.4 binaries and libs and link to the newly installed binaries. This makes the integration seamless and invisible to XCode which is what I was looking for.
ok so to cut my long drawn out blurb short, if you are looking to install Subversion 1.5.x for use with XCode 3.1.1 download the latest Subversion Package from here then run this series of commands
cd /usr/lib
sudo mv libapr-1.dylib libapr-1.dylib_old
sudo mv libaprutil-1.dylib libaprutil-1.dylib_old
sudo mv libsvn_client-1.dylib libsvn_client-1.dylib_old
sudo mv libsvn_delta-1.dylib libsvn_delta-1.dylib_old
sudo mv libsvn_diff-1.dylib libsvn_diff-1.dylib_old
sudo mv libsvn_fs_fs-1.dylib libsvn_fs_fs-1.dylib_old
sudo mv libsvn_fs-1.dylib libsvn_fs-1.dylib_old
sudo mv libsvn_ra_local-1.dylib libsvn_ra_local-1.dylib_old
sudo mv libsvn_ra_svn-1.0.dylib libsvn_ra_svn-1.0.dylib_old
sudo mv libsvn_ra-1.dylib libsvn_ra-1.dylib_old
sudo mv libsvn_wc-1.dylib libsvn_wc-1.dylib_old
sudo mv libsvn_repos-1.dylib libsvn_repos-1.dylib_old
sudo mv libsvn_subr-1.dylib libsvn_subr-1.dylib_old
sudo ln -s /opt/subversion/lib/libapr-1.dylib libapr-1.dylib
sudo ln -s /opt/subversion/lib/libaprutil-1.dylib libaprutil-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_client-1.dylib libsvn_client-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_delta-1.dylib libsvn_delta-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_diff-1.dylib libsvn_diff-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_fs_fs-1.dylib libsvn_fs_fs-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_fs-1.dylib libsvn_fs-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_ra_local-1.dylib libsvn_ra_local-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_ra_svn-1.0.dylib libsvn_ra_svn-1.0.dylib
sudo ln -s /opt/subversion/lib/libsvn_ra-1.dylib libsvn_ra-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_wc-1.dylib libsvn_wc-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_repos-1.dylib libsvn_repos-1.dylib
sudo ln -s /opt/subversion/lib/libsvn_subr-1.dylib libsvn_subr-1.dylib
cd /usr/bin
sudo mv apr-1-config apr-1-config_old sudo mv apu-1-config apu-1-config_old
sudo mv svn svn_old
sudo mv svnadmin svnadmin_old
sudo mv svndumpfilter svndumpfilter_old
sudo mv svnlook svnlook_old
sudo mv svnserve svnserve_old
sudo mv svnsync svnsync_old
sudo mv svnversion svnversion_old
sudo ln -s /usr/local/bin/apr-1-config apr-1-config
sudo ln -s /usr/local/bin/ apu-1-config apu-1-config
sudo ln -s /usr/local/bin/svn svn
sudo ln -s /usr/local/bin/svnadmin svnadmin
sudo ln -s /usr/local/bin/svndumpfilter svndumpfilter
sudo ln -s /usr/local/bin/svnlook svnlook
sudo ln -s /usr/local/bin/svnserve svnserve
sudo ln -s /usr/local/bin/svnsync svnsync
sudo ln -s /usr/local/bin/svnversion svnversion
Then I tried a project in xcode which was under SVN control and Voila all good.
Did a version check in the terminal again and it was at 1.5.4. YAY!!
This little bit should work if you compile sunversion too as the install goes into the same place.
As a bonus I opened Versions and changed the prefs to 1.5.1 and restarted the app and checked the prefs again and its all good.
Enjoy