I had to shut down the server with my Subversion repository for a few days. As I felt like coding and I hate coding without some sort of revision control system in place, it was the time to check out some Subversion alternatives.
I dumped my Subversion repository (
svnadmin dump
) and scp'ed it to another machine. Pretty much at random I picked SVK first.It turned out what I did wasn't the right strategy for setting up a local repository - most distributed revision control systems prefer to use network connections to set up mirrors. I had possible to convert the dump back to Subversion database (
svk admin load
does more or less the same thing as svnadmin load
), moving the imported files somewhere else, and mirroring that, using file:// protocol (svk mirror
followed by svk sync -a
).That wasn't all, as one is not supposed to work on mirrors directly - the official way is to create a local branch (
svk copy
), commit there, and sync later. Setup was a bit compicated, and svk sync -a
took over 15 minutes, but afterwards it was a pure pleasure.Pretty much every single command I used in Subversion just worked, I only had to say
svk whatever
instead of svn whatever
. Even svnadmin
commands are available with svk admin
. That's quite important, as I knew and liked Subversion already, and didn't really felt like switching paradigm more than necessary. svk
was also very fast once installed. That's also a nice thing, as I tend to commit every single new unit test separately instead of doing big commits every few hours.Well, there's not much more to add - SVK just works, and without a lenghty adjustment period.
No comments:
Post a Comment