I'm getting the following error when I try to update my repository. Can someone explain what it means?
Command: Update
Error: URL Error: 'http://mysvn/foo' Error: o开发者_如何学编程f existing directory Error: 'C:\SVN\MyProj\NinjectModules\Models' does not match Error: expected URL 'http://mysvn/foo/NinjectModules/Models' Finished!:It is not always a case problem
I encountered this error message due to improper directory moving that scrambled the svn data. The way I fixed it was to delete the working copy directory and then svn update that directory.
This kind of error message is usually associated with letter casing errors in the svn repository. Perhaps your svn is installed on a Linux machine and there you have two identical folders:
(..)/mysvn/foo
(..)/MySVN/Foo
And initially SVN checks out MySVN/Foo
and it doesn't find the \NinjectModules\Models
folder because it is in /mysvn/foo
location
Another reason might be migration from including some files with svn:externals
property to actually adding the files to your repository.
That is, when between two updates of your working copy someone does following:
#svn up removes local copies of external resources when svn:externals is deleted
#so we need a backup
cp -R library/resource /backup
svn propdel 'svn:externals' library
svn up
cp -R /backup/resource library
svn add library/resource
svn commit -m "this will break other working copies, but we have the resource in our repo now"
When you try to svn update
your wc, you will get following message:
svn: URL 'svn://path.to/external/resource' of existing directory
'library/resource' does not match expected URL 'svn://my.own.repository/library/resource'
In such case the solution is as usual - remove the library
directory of the working copy and do svn up
to restore it in its current state.
Remeber to back up your local changes somewhere
精彩评论