For now, you can use almost any client version of Subversion against any server version of Subversion. Your Server can be at version 1.6 and your client can be at 1.8, or visa versa. It doesn't matter.
However, you are not suppose to use a working directory created with one Subversion client with a second Subversion client because there is no guarantee that these two clients will understand the layout of the working directory.
Throughout most of Subversion's history, this rule was blithely ignored. The standard Subversion library created a standard working directory layout, and most clients simply used that. I've even seen people put their working directory in Dropbox and share it among Macs, Linux, Windows, and Cygwin clients.
This laxidasical way broke when Subversion 1.7 came out. Before 1.7 the .svn
directories were scattered throughout the working copy -- one for each directory. In Subversion 1.7, this was no longer the case. The .svn
directory is only in the root of the working directory. That meant that a Subversion 1.6 client could not share a working directory with a Subversion 1.7 client.
When Subversion 1.8 came out, again the standard format changed, and working directory checked out by a Subversion 1.7 client can no longer work against a 1.8 client.
In theory, you still shouldn't use different clients when accessing a working directory, but most clients still use a similar format. What you definitely cannot do any more is use different versions of Subversion clients with the same working directory.
Between client Subversion 1.6 and Subversion 1.7, there was a way to update the working copy, but I usually recommend just to checkout a new copy if you can. Even if you do upgrade the working copy, I recommend that you checkout a clean version when you finish your work.
Recap
- The version of the Subversion client you use can work on almost any version of the Subversion repository.
- You can no longer use different versions of Subversion clients on the same working directory. I recommend doing a fresh and clean checkout instead of using
svn upgrade
when possible. Even if you usesvn upgrade
, I recommend checking out a clean copy once all work has been completed.