I would like to move a file or folder from one place to another within the same repository without having to use Repo Browser to do it, and without creating two independent
From the command line, you can type svn mv path1 path2
. This will create an add and a delete operation, but there's not really a way around that - as far as I know - in Subversion.
Use the svn move
command to move file/folder.
If you want to move files around and keep the csproj files up to date, the easiest way is to use a Visual Studio plugin like AnkhSVN. That will automatically commit both the move action (as an delete + add with history, because that's how Subversion works) and a change in the .csproj
To move a file or set of files using Tortoise SVN
, right-click-and-drag the target files to their destination and release the right mouse button. The popup menu will have a SVN move versioned files here
option.
Note that the destination folder must have already been added to the repository for the SVN move versioned files here
option to appear.
Subversion does not yet have a first-class rename operations.
There's a 6-year-old bug on the problem: http://subversion.tigris.org/issues/show_bug.cgi?id=898
It's being considered for 1.6, now that merge tracking (a higher priority) has been added (in 1.5).
As mentioned earlier, you'll create the add and delete commands. You can use svn move on both your working copy or the repository url. If you use your working copy, the changes won't be committed - you'll need to commit in a separate operation.
If you svn move a URL, you'll need to supply a --message, and the changes will be reflected in the repository immediately.