The latest release of Piston provides you with the ability to switch the upstream repository locations without losing any history.
1 $ piston switch http://dev.rubyonrails.org/svn/rails/tags/rel_1-2-1 vendor\rails 2 Processing 'vendor\rails'... 3 Fetching remote repository's latest revision and UUID 4 Restoring remote repository to known state at r6010 5 Updating remote repository to http://dev.rubyonrails.org/svn/rails/tags/rel_1-2-1@5990 6 Processing adds/deletes 7 Removing temporary files / folders 8 Updating Piston properties 9 Updated to r5990 (663 changes)
Piston 1.3.0 also shows the revision number of locked directories.
As usual, nothing could be simpler:
1 $ sudo gem install --include-dependencies piston