When one does svn switch <source> <target>, I understand that it switches the working directory to target path.
I would like to understand what –relocate is used for. I thought this was only used when the url of repository had changed and one wanted to update working copy url to point to new svn server location. But it seems Relocate can only change the repository part of an URL.
So my question is, what does the –relocate switch do? In particular, can it be used to integrate to user branch a vendor branch that has many differences since previous version, ie
svn co path\to\vendor\lib
svn --relocate lib url\path\to\my\branch
svn commit -m "Updated my branch with vendor code without using cp, this way _I think_ enables deleting folders and files that don't exist in new version of vendor lib.
Am I getting any of this right?
SVN Relocate is for when those pesky admins move the path to your repository.
For example original:
http://mydomain.com/svn/repo/Project/MyApplication/trunk
Admin gets bored and changes it to:
http://mydomain.com/svn/MyApplication/trunk
You would need to do svn relocate to tell svn that the path to your project has changed.
As for your provided example it can not be used to reintegrate branches, the command is to let the svn client update all of its paths to the new location of your repository. You need to svn merge them.