Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AnkhSVN: moving a project to another repo

My task is to move this VS solution and projects to another SVN server. I'm working with Visual Studio 2010 RC1 and AnkhSVN 2.1.7819....

  • Currently the files are all bound to a repo at C:\Repositories\foo.
  • I'd like to move it to http://someSite/svn/foo

The most obvious way, I found, was the Pending Changes - Source Files window (which appears to belong to AnkhSVN). It appears to allow you to change the repository that you're working with.

alt text

alt text

I'm presented with this error message:

Repository UUID '152c39db-5799-4234-85f2-074004a6fcad' doesn't match expected UUID '6c83444d-7f93-d64a-b0a0-23283495cf17'

Questions

  • How can I avoid this message in AnkhSVN?
  • Are there better solutions for moving the source into a repo on the new target?
  • How can I get Ankh to 'forget' that repo at C:\Repositories\ forever?
like image 519
p.campbell Avatar asked Mar 08 '10 04:03

p.campbell


3 Answers

This dialog performs a switch between different locations in the same repository (and allows you to change the URL if the repository moved).

In your case you want to switch to a completely different repository that doesn't share history. (Well maybe you want to keep the history but you didn't ask).

To copy the data to a different repository you can perform an export and then use the 'Add Solution to Subversion wizard'.

TortoiseSVN has an in-place export function that deletes all the .svn folders from your working copy. You could use that too. (Make sure you refresh the AnkhSVN status after removing the .svn directories)

like image 57
Bert Huijben Avatar answered Sep 19 '22 08:09

Bert Huijben


If you want to keep history, see Migrating Repository Data Elsewhere in the excellent svnbook. It also describes a way to keep the repository UUIDs the same, so you can just relocate from the old one to the new one.

Be sure to disable the old one though so you don't get commits to both at the same time (very bad thing if that happens).

like image 2
Sander Rijken Avatar answered Sep 23 '22 08:09

Sander Rijken


This is an old question but none of the answers are anything to do with the question asked

now Assuming you have your new repository created(if not look at the other answers)

In the File menu is an "Subversion" item under this a "Change Source Control" option

in here the first thing you need to do is Disconnect your solution and all projects from SVN

once you have disconnected, highlight the solution and the projects and look at the bottom half of the screen next to "SCC binding path" is a [...] button click it and your can change your repository

change it to the correct repo and then reconnect your project and solution and you should now be using your new repo

the easier method in to user the Relocate command in TortoiseSVN, this will update the SVN files in the solution and will then be picked up by Ankh though use the same "Change Source Control" screen to double check

like image 1
MikeT Avatar answered Sep 23 '22 08:09

MikeT