I am taking some work home with me these days and I transport it on a USB key because my work is on a private intranet.
I am using Visual Studio 2008 and I find that the performance of builds is degraded by working off the the key. My initial thought to improve performance is to use Robocopy to mirror the directory locally and then when I'm ready to take stuff back to work I just use Robocopy again to mirror the working folder from the hard drive onto the USB Key. So, my roundtrip looks like this
USB -> Hard Drive -> USB
Does anyone see any potential issues with that? I guess I'm worried about the contents of the .svn folders getting messed up and disallowing me from uploading my source code when I get back to work
As long as robocopy copies the entire .svn folder it shouldn't case any problems as far as I'm aware.
You could also try to use DVCS that interfaces with Subversion (e.g. Mercurial, or git svn). DVCSes are much better at working offline, too (and Mercurial Queues are awesome :)).
You'd have repository on USB, and on your local drive. Workflow would be: update repository on USB from SVN in work, push changes from USB to local repo in home, work on the code (with full change tracking), push changes from local to USB, push changes to SVN in work.
You should make sure you're not working off a FAT32 partition on that stick, since this might mess up file change/creation dates.
As for copying SVN folders: I do this regularly and never had any issues with it.
I've used Unison for years now, works like a charm - it has a benefit of syncing everything, the compiled binaries,etc.. so can quickly catch up where left work.
I'm combining this with git-svn
- this has the benefit of seeing the whole repository with all branches, so commit, merge, and even a "delayed svn update"(git svn rebase -l) works as well.
My main box is GNU/Linux, but have infected my fellow Windows users and they love it too.
Also, git works very well with big repositories.. the entire repository with all history and branches should fit on a USB stick, actually taking less space than the just a single SVN checkout.
来源:https://stackoverflow.com/questions/1494400/work-with-subversion-from-usb-key