views:

964

answers:

3

Recently, I made a decision to upgrade my svn repository from v1.5 to v1.6. After I run the upgrading command then I saw the message left in CMD windows.

D:\svn>svnadmin upgrade repo
Repository lock acquired. 
Please wait; upgrading the repository may take some time...

Upgrade completed.

D:\svn>_

Ya!! It seems great... but.... How do I know which version current repository is? Is it upgraded to v1.6 or still is v1.5. There are few repositories I have. How can I find out their version?

+5  A: 

Take a look into the file 'format' in your repository-path. It should contain the schema of your repository. Since Subversion 1.4 that is 5 and will probably not changing before Subversion 2. As long as the schema don't change a 'svnadmin upgrade' is unnecessary.

To cite http://svn.collab.net/repos/svn/trunk/notes/repos_upgrade_HOWTO:

Anyone upgrading between versions of subversion that have different
repository schemas.  Schema versions are as follows:

    SUBVERSION VERSION NUMBER           SCHEMA VERSION
    -------------------------           --------------
    Up to and including 0.27            1
    0.28 - 0.33.1                       2
    0.34 - 1.3                          3
    (no released version used this)     4
    1.4 -                               5

If necessary you can see which schema version your repository is
currently using by looking at the format file in the repository.

It should be noted that these changes are extremely rare.  Now that
subversion has reached 1.0.0 our compatibility guarantees require
forward and backward compatible repository formats for all patch
releases and backward compatible for minor releases.  So until
2.0.0 comes out there will be no change that should require a 
dump for upgrading to newer versions.

While Subversion does create version 5 repositories by default as of
version 1.4, it still supports reading and writing version 3
repositories for backwards compatibility.  Additionally, a pre-1.3
client can communicate with a 1.4+ server accessing a version 5
repository.

Don't mix up the repository-schema with the one of the working-copy. The format-file in working-copy contains a '9' for current versions of subversion.

Mnementh
mine says 9. I assume that relates to 1.59
John Nolan
Thanks for trying answer my question.I saw only a letter "5" in format file which located in repository-path. What does it mean?
Millionbonus
I edited my answer. That number shows the repository-schema.
Mnementh
-1 this file was last modified: Mon Dec 11 17:28:05 2006 UTC (2 years, 5 months ago) by glasser
tuergeist
It seems that. The version of svn 1.4 to 1.6 using same schema version for repository then It's not necessary to upgrade it if you just change the version 1.5 to 1.6.
Millionbonus
@tuergeist: The file is not deprecated. Also current versions of subversions create repositories with schema-version 5.
Mnementh
A: 

Looking at this code to change the format of subversion working copy

the latest formats are

LATEST_FORMATS = { "1.4" : 8,
                   "1.5" : 9,
                   "1.6" : 10
John Nolan
That's the working copy, how about the repository?
Mnementh
same stuff applies
tuergeist
A: 

Apart from /format, now there's also a file /db/format, e.g. in default repo created with 1.6.x it has the following content:

4 layout sharded 1000

For a repo upgraded to 1.5.5:

3 layout linear

For plain vanilla 1.4.2 repos:

2