Version control. Isn’t it tasty? I’ve worked with my share of
CVS repositories, but my version control system of choice is Subversion. Similar in usage
to CVS, but with atomic commits, well-behaved renaming, real db
backend, easy branching…it has goodness. I like subversion.
One of the biggest downsides is developing on your laptop. SVN
working directories aren’t completely decentralized…if I check out a
project from my server, and go to the beach (w/o Net access) for a
week, I can’t easily keep my “beach changes” under version control
locally on the laptop. The model is centralized…I’m dependent on my
central server for maintaining the records of multiple changesets in
the working directory. Without a true repository (which I don’t have…just a
“working directory”), I can’t commit repeatedly while offline. Bummer.
Enter arch and darcs. Both support models where “offline” repositories can do version
control independently, allowing me go truck along while working from a beachhouse on Tybee Island. The branches can be merged back up later. Joy.
So that sounds cool, and I’ve played with
arch. It’s…nonintuitive…at times. Though admittedly, I think, very
powerful. But now I’ve read the recent slashdot
post about darcs…seems pretty straightforward. And there’s a
Debian package. So…what the heck. Might as well play with yet
another revision control system this weekend…I’ll report back.