Wednesday, July 5, 2006

Version Control with SVK

 I was a big fan of BitKeeper when it was free for open source
development, and I still miss a number of it's features. Oh well. At
this point however it's place in my heart has been replaced with href="">SVN and
further SVK
SVK allows for one of the things I miss the most, decentralized version
control. With SVN I was commonly frustrated when I wanted to push back
code but wasn't:

  • online

  • finished

I commonly found myself in the position of having code that I was done
with, or having made some changes I was (at least relatively) sure
about and needing/wanting to commit.  With the goal being to
move on to another change, modification or new function. Sometimes
being quite sure that what I really wanted to do was poke around but
not have to worry about taking a snapshot of the current code to get
back to it after I took a horribly wrong approach.

SVK fills that void, by using SVN as a base but keeping a local copy
and allowing mirroring and syncronization I can commit at will
effectively check pointing code whenever I think I have completed
something or when I know I am about to go off the rails with some wild

SVK also makes rapid development/testing easier, since the workspace in
SVK is a flat filesystem using rsync to push changes to a test system
is quite effective without the  overhead of copying the local
.svn structure to the test host.

A bit more on mirroring particularly CVS later.

See also: The SVK Wiki,
Subversion Project Page

Technorati Tags: rel="tag">SVK, href="" rel="tag">SVN,

No comments:

Post a Comment