tags:

views:

852

answers:

2

I'm trying to move a working copy folder from it's old dedicated svn server, to a new svn server where it is contained within a sub-folder. Using the following relocate command:

svn switch --relocate https://oldserver/svn/repos https://newserver/some/directory 

I get:

svn: 'https://newserver/some/directory ' is not the root of the repository

Which is a correct ..... but, err, how do I move the location regardless?

A: 

Well im assuming youve already actually migrated the repository via svnadmin dump/svnadmin load so in that case you could try: svn switch --relocate https://newserver/some/directory If you get the same error you might actually have to just do a new svn co. I dont recall ever coming across that error but then all my repos use a nested structure like the one youre moving to so its possible ive never had to deal with it :-)

prodigitalson
My repository was far too big for an easy svnadmin dump (it's used for binary files among others), so I svn co'd into a fresh directory and svn commited....
Jon Hadley
Well given that then why do you need to `switch` use the new checkout...
prodigitalson
The repository is co'd to more than one location (live server, dev server, 2 devs machines etc). It's a big repository and I'd rather not have to download it all over again - reading into switch it seemed that switch could just change the url's that the repos used...
Jon Hadley
+1  A: 

As far as I understand, you can't use svn switch (with or without --relocate) to move to a new repository. Think about it this way: your new repository's HEAD revision is x, your old repository's revision is y, so what is SVN supposed to do with the working copy's base revision?

svn help switch says that --reallocate is used to:

Rewrite working copy URL metadata to reflect a syntactic change only. This is used when repository's root URL changes (such as a scheme or hostname change) but your working copy still reflects the same directory within the same repository.

Since this is not the case, I'm afraid you'll have to perform a fresh checkout.

Eli Acherkan