tags:

views:

11116

answers:

5

How can I determine current version of my repository to see if I need to upgrade it (svnadmin upgrade)?

In reality I'm hosting SVN with 3rd party and I want to find out if I need to ask them to upgrade my repos or not.

I'm asking since 1.5 server will keep repo version at 1.4, unless I miss something?

+14  A: 

Have a look at <REPO>/db/format. After upgrading to 1.5 format, my format file shows:

3
layout sharded 1000

Before it used to be:

2
bdumitriu
It's '4' for Subversion 1.6. This is /probably/ the best way to determine the version of the repository.
James Skemp
where is this information? I'm on windows and using tortoisesvn.
Kugel
-1. The questioner has stated that the repo is on a third party SVN host. They don't give you access to the physical repository. There is no way for the questioner to directly access this file. BTW, no argument this is the best way to determine the version if you have access to it.
Ken Gentle
+6  A: 

Take the http or https link to your repository and cut & paste it into a browser. The Subversion repository server version appears in the footer by default.

Powered by Subversion version 1.4.5 (r25188).

One would assume that a 1.4 server won't be running against a 1.5 repository.

For details, see the Subversion 1.5 Release Notes

Thanks to @Omus for the correction.

Ken Gentle
I thought this was SVN server software version, not repository version?
Ornus
but it could run the other way around, no?
Ornus
That's where the "one would assume" comes in - possible, but doesn't make much sense, does it?
Ken Gentle
"The Subversion 1.5 server works with 1.4 and older repositories, and it will not upgrade such repositories to 1.5 unless specifically requested to via the svnadmin upgrade command." - http://subversion.tigris.org/svn_1.5_releasenotes.html#repos-upgrades So you shouldn't assume :)
James Skemp
bdumitriu's answer is correct
Unreality
A: 

I would also suggest spoofing response headers because some server installations (VisualSVN Server comes to mind) uses custom pages which unfortunately doesn't show Subversion server version.

You could use Fiddler2 to spoof request/response to the server. If You're using an HTTPS connection be sure to check "Decrypt HTTPS traffic" option in: Tools->Fiddler Options->HTTPS

iacoware
+3  A: 

You can check the content of the file "format" under the "db" directory. If it shows 3 then it has been upgraded to 1.5 (that's the version of the updated fielsystem). If it is 2 then it is 1.4 or older.

A: 

We have an SVN server running 1.4.2, and our /db/format file contains:

3
layout linear

Based on the responses above, this states my repository is version 1.5.

The client on the same box is version 1.5.1. Perhaps someone upgraded the repository without upgrading the server? The server runs as mod_dav_svn under apache2. Is this possible, having a 1.5 repository, served by a 1.4.2 server? What sort of problems would I be seeing?

perhaps this it's better to create a separate topic for these questions. otherwise people won't see them to answer them.
Ornus
No, you cannot have a Subversion 1.4.x server serve a 1.5.x (db format 3) repository. It wouldn't know how to parse the repository.
neu242