I've fallen in love with Subversion. Some time ago, I had a go at using another version control system (CVS), but I never managed to get the hang of it; it seemed more trouble than it was worth. But when I moved to TextDrive, I found that I had access to Subversion repositories, so I decided to see if I could get to grips with it.
The Subversion book proved invaluable, but it all seemed much simpler than CVS once I'd got the basic idea. I'm currently working on the next version of my GTD app, and it's been wonderful to be able to hack away at it without worrying that I'm not going to be able to put things right again if my new feature turns out to be a gigantic mistake. As long as I make sure that the app is working properly (or at least that I know exactly what is working and what isn't) each time I submit a commit, I have a reassuring safety net, and can experiment to my heart's content.
It's fantastic! I almost wish that I could have my whole life administered by Subversion so that — in the likely event of a major mistake on my part — I could just
svn revert to a previous, non-messed up version.