About a month ago, CodePlex have upgraded their TFS servers to to TFS 2010.
While this transition was supposed to be invisible to users who connect using the SVN interface, it wasn’t.
The Problem
This is what I got while trying to update a project which resides on CodePlex, using AnkhSVN plug-in.
Or in a search-engine friendly way:
SharpSvn.SvnException: Repository UUID 'XXX' doesn't match expected UUID 'YYY'
at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, SvnException error, Object targets)
at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, svn_error_t* error, Object targets)
at SharpSvn.SvnClient.Switch(String path, SvnUriTarget target, SvnSwitchArgs args, SvnUpdateResult& result)
at SharpSvn.SvnClient.Switch(String path, SvnUriTarget target, SvnSwitchArgs args)
at Ankh.Commands.SwitchItemCommand.<>c__DisplayClass7.<OnExecute>b__0(Object sender, ProgressWorkerArgs a)
at Ankh.ProgressRunnerService.ProgressRunner.Run(Object arg)
The Solution
We will use Visual Studio excellent “Find and Replace” in files.
Just follow these steps:
- BACKUP your local project folder
- Open Visual Studio
- Select Edit –> Find and Replace –> Replace in Files (or press Ctrl + Shift + h)
- In the “Find what” field write the expected UUID (you can get it from the previous error message)
- In the “Replace with” field write the new UUID
- In the “Look in” field write the name of the local folder where your project resides
- Expand the “Find options” and write the word “entries” in the field named “Look at these file types”
- Click “Replace All”
Following is an image that summarize these changes for my project:
When you get the following warnings, just select Overwrite (Alt + o).
And we’re done. Your project is officially fixed.
That’s it for now,