Question about features

Stephen J. Turnbull stephen at
Thu Nov 5 14:58:24 GMT 2009

Ben Finney writes:
 > Tom Widmer <tom.widmer at> writes:

 > > Really, you just need to make another commit that corrects the
 > > problem.

 > Yes.

Speak for yourselves.  git and Darcs users take different points of
view and don't necessarily need more commits; often they strongly
prefer less.

Some git users view history as a social construct.  There's no history
until you tell it to somebody else.  Once you've shared it, though,
it's community-owned.  So you don't rebase a published branch.  And
like the Japanese, we like our history to be nice looking.  So we set
up a "tate-mae", a nice story you can tell in front of your mother.
More precisely, the DAG of tree objects is of course a connected
graph, just as the DAG of mathematical theorems is.  And just as
mathematicians persist in finding new paths, ie producing new proofs,
for old theorems -- and get published for doing so! -- git users like
to polish up the history of development.

Others think more like Darcs users.  rebase is a way to express the
combinatoric nature of patches and "features".

Darcs users are yet another type.  Darcs users are too abstract to use
rebase.  They expect the VCS to do such recombination for them.
They're also quite ahistorical (not all that surprising given the CPT
invariance of particle physics ;-).  So where git users think of
history as a trail of breadcrumbs in a maze of revisions[1], Darcs
users live in a algebra of recombinant (or commutative) patches.  And
patches are more or less equivalent to features.  It's not surprising,
then, that they like to simplify by cancelling inverses, leaving only
the collection of features, each embodied in a patch, that make up the

[1]  Or as I prefer to think of it, hellriding from the Courts of
Chaos to the Pattern of Amber.

More information about the bazaar mailing list