Just some babblings by Jeff Sparkes

.

December 31, 2007

Why I like darcs

Filed under: Development

Darcs supports the checking in of individual patches, even if they’re in the same file.

Often when I’m fixing a bug, I find a few more too. Darcs lets me check in each of the fixes separately which give me a better change history.

I can do this with other SCMs, but it’s a lot of hoop jumping. I have to copy the fixed file somewhere, revert the working copy and then copy each of the fixes back into the working copy and check each change in. (I find ediff in valuable for this. It’s worth using emacs just for that one feature.)

Darcs just naturally fits my working style. I also have a tendency to make other changes while I’m editing, and sometimes work on more thing at a time.

Git users say that it operates on content, not files, but it appears that I can only commit a file. (I haven’t explored git very much). None of the other popular distributed SCM programs seem to have that kind of feature. Maybe “cherry picking” is close, but that seems to come after a commit.

Maybe darcs “theory of patches” is unique. And given the plethora of ways to get different SCM systems to interconnect, I can likely use darcs locally whatever the originating system is. This lets me work on various open source software using different repositories. The best of both worlds?


Get free blog up and running in minutes with Blogsome | Theme designs available here