Wednesday, October 22, 2008

Mercurial Revision Control System

Today I'm going to talk a little tech. You know you like it, baby.

I would like to wax poetic about Mercurial, a code revision control system. Not only do I use this for "writing" my thesis (whaa? writing? Is that what I'm supposed to be doing?), but I use it to write code for my research. And it's so fabulous I could wet my pants. I never thought I could love a revision control system so much.

My love/hate relationship with revision control systems began when I was in college, and I was taking my first computer science course. Unlike most of my classmates, I had never dorked out on computers before, I was fresh fresh fresh. And we had an assignment that required us to use RCS, an antiquated revision control system. I remember staying up reaaaaaally late a couple of times working on this assignment, but messing up the non-intuitive RCS and losing a lot of work, and then I was so mixed up and confused about the state of my code that it totally sucked. I almost cried that night. I remember calling my friend and flipping out. I shouted, "I fucking HATE RCS!" multiple times.

Well my friends, thank god those days are over. I freaking LOOOOVE Mercurial. This is how I feel:


The best thing about mercurial is the patch queue system, known as mq. This allows me to work on a large piece of cooperative software, keeping my changes separate, intuitive, easy to manage, and easy to update. I don't think the audience of this blog is all that teched out, so I won't go into it more, but suffice it to say that I wanna marry Mercurial. I really do.

No comments: