[darcs-users] Easily managing over 100, 000 lines of code with darcs

Stephen J. Turnbull stephen at xemacs.org
Wed Mar 31 16:05:24 UTC 2010

Mark Stosberg writes:

 > Thanks for feedback. When I do use get, I'm a big fan of "git add -i",
 > but I have usability frustrations with it as well. First, it's not
 > interactive by default like darcs is.

I *hate* interactivity in my command line tools. :-)

 > Second, the "-i" option is not a core feature!

Sure, but wait until v1.8. :-)  git evolves just as fast as Darcs, and
maybe faster in the UI area.  While the plumbing commands and obsolete
commands remain available (thus "annoying" Simon, I would imagine),
the core set is down to about 12, and the set that I personally use at
all any more is under 25 (and includes some very sophisticated stuff
like the fastimport tools and filter-branch, as well as low-level
utilities like cat-file).

Again, I don't mean this to be "git advocacy", just to point out that
as a marketing strategy making favorable comparisons against the
competition on things like "command count" and "interactivity by
default" is likely to crash head-on into software evolution and user

 > Our workflow is primarily built around cherry picking patches based on
 > ticket numbers in the patch names (spontaneous branches). I wouldn't
 > call this feature of "simpler"... I know of no VCS which an do it as
 > well as darcs does. 

But I *would* call it "simple."  It's built around a single, memorable
idea, and requires no extensions to Darcs or complicated option
fiddling.  Simple is good, and this particular idea is something that
can be done so simply only in Darcs (and possibly GNU Arch, but Arch's
patch-naming policy doesn't lend itself to this, so you'd need some
extensions or scripts).  The DAG/snapshot-based systems will have a
very tough time emulating it, so this is a good feature to emphasize,
especially now that you've demonstrated that it scales (IIUC).

The patch-oriented nature of Darcs also fits with many people's
intuitions about the software development process; contrasting that
with the snapshot/DAG orientation is good marketing, IMHO.

However, you should be careful in comparing "darcs simple" to "git
complicated" in general.

More information about the darcs-users mailing list