On my current project we use Subversion 1.4. My MacBook Pro came with a preinstalled Subversion client 1.6.5 (use svn –version to see what clientversion your are running). I had assumed we used 1.6 so I didn’t change my client. I was aware of the troubles you can have mixing svn client and server versions.
I had no trouble synchronizing up untill now since Eclipse uses a build-in client and commandline svn st and up works without any trouble with different Subversion versions. Today I ran into some trouble while releasing with Maven 2.2.0 (preinstalled on the MBP as well). There was no actual error but when I ran mvn release it stalled on download maven-release-plugin-2.0-beta-8.pom. A friend with a Mac remembered he had the same trouble releasing before since it should be using the beta-7 release plugin for svn server version 1.4 and advised me to downgrade my Subversion client.
If you are using this as a setup/tutorial: DON’T FORGET TO COMMIT OR BACKUP YOUR DATA FIRST!
I downloaded an older version of Subversion, 1.5.4 (minor versions should be simlair of the client and server version) and installed it on my MBP. After restarting my terminal svn –version still showed I was using 1.6.5. After some research I found out about the somewhat weird setup:
- echo $PATH showed me: /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
- cd /usr/local/bin and ls-lrta gave me a symbolic link for svn: svn -> /opt/subversion/bin/svn
- this symlink was actually pointing to svn 1.5.4 (/opt/subversion/bin/svn –version) (the 1.6.5 was actually moved to an versioned directory in opt subversion_backup.date)
- in /usr/bin i found that there was another svn client, that actually had version 1.6.5
- I moved that file to svn.old (so it wouldn’t be found when calling svn), restarted my terminal and svn was now set to 1.5.4
mvn release now used the maven-release-plugin-2.0-beta-7.pom and releasing worked out just fine (well… except for a hanging artifactory problem)
Don’t forget to check out (svn co) your projects again and throw away the old versions since the .svn directories are poluted with the other svn versions stuff. Also think about changing your svn client in your development tool.