Thursday, August 21, 2008

Subversion 1.5.1 in OSX

So I upgraded my Subversion server a few weeks ago, but didn't think about it, because I was working on existing projects that all belived that they were still working in svn 1.4.x working copies. So today, when I created a new project in a new repository on the server I was shocked that my trusty TextMate would throw an error when I tried to commit my changes to the new repository. The error message let me know everything I needed to know:

this client is too old to work with working copy.
At first I wondered why my Eclipse-based SVN clients weren't having this problem, but I figured they were using internal copies of SVN (true, by the way. They're both using SVNKit)
So: apparently TextMate uses the system SVN client, which only makes sense. Thus I needed to upgrade my system client. Three minutes on Google let me know that Collab.net hosts compiled binaries, and that all I needed to do was run the installer and I would be good. So I dutifully downloaded and ran the installer (found here) and then went back to the command line and typed svn --version and like magic... It was still showing Subversion v. 1.4. snooping around a bit showed that the new version was installed in /opt/subversion. Okay then. so I went to ~/ and edited .profile to include /opt/subversion on the path:
export PATH=/opt/subversion:$PATH
and closed and re-opened my terminal session, so that it would reload the .profile preferences.
Okay! so I ran svn --version again, and 1.4. was still there. So, going into /usr/bin I find the svn command for version 1.4.x and use
sudo mv svn svn.old
to rename it.
After that I ran svn --version again and was greeted with a cheery 1.5.1, and Textmate could commit changes to my repository again.

So, if you have the same problem, now you know how to solve it. Thanks!

1 comments:

Billee D. said...

Thank you so much. I have been trying for several days now to work this out. You hit the nail for me!