39

I would like to upgrade my TortoiseSVN installation to version 1.7. We have a VisualSVN server running with a SVN 1.6 repository.

Do I need to upgrade the repository to 1.7 before I can update my client, or is TortoiseSVN backwards compatible?

I know that during the upgrade from TortoiseSVN 1.6 to 1.7, I need to convert my working copy to the new format, but during a commit does it have some logic to see the server version and adapt appropriately?

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Steve Goykovich
  • 757
  • 1
  • 9
  • 17

4 Answers4

27

In the release notes

Older clients and servers interoperate transparently with 1.7 servers and clients

...

Subversion 1.7 servers use the same repository format as Subversion 1.6. Therefore, it is possible to seamlessly upgrade and downgrade between 1.6.x and 1.7.x servers without changing the format of the on-disk repositories

There is no need to do anything, your working copy will be upgraded, and will still be able to talk to the 1.6 server

CharlesB
  • 86,532
  • 28
  • 194
  • 218
  • 10
    Note: TortoiseSVN will update the working copy format which will create problems for older clients. This is only a problem if you have an environment where multiple different clients are used to access the same working copy. E.g. if you access the working copy from TortoisSVN and from IDE (e.g. PHPStorm) that only supports 1.6 working copy format. – Artem Goutsoul Feb 14 '12 at 12:24
  • @ArtemGoutsoul you can use separate WC for clients on SVN 1.6 – bahrep May 23 '12 at 12:26
8

Yes, it will.

You can run into problems if you use different versions of the client on the same working copy (i.e. checked out directory). Also, if you use an old client with a new server, you may not be able to use some of the new server features.

However, new SVN clients are downwards compatible with old server, with the exception of some new features. So using TortoiseSVN 1.7 with Server 1.6 should work without problems.

See the compatibility matrix on the SVN site.

sleske
  • 81,358
  • 34
  • 189
  • 227
1

It works just fine with 1.6 server (1.6.17 in my case).

Krzysztof
  • 15,900
  • 2
  • 46
  • 76
0

Anecdote time:

  • Server Ver. 1.6.17
  • client A Subversion 1.8.9 (win, tortoise)
  • client B version 1.6.17 (r1128011) (linux)

on client B:

 - create branch_x with lots of files
 - commit
 - svn mv branch_x branch_xnew
 - log shows A branch_xnew, then thousands of D for each file in branch_x
 - commit
 - fails saying that branch_x is out of date.

 - out of desperation, revert --depth inifity... same
 - more desperation, checkout a clean working copy, svn mv, commit, fails "branch_x is out of date".

on client A: svn mv, commit, done. svn up on client B shows no conflicts. all done.

gcb
  • 13,901
  • 7
  • 67
  • 92