Pushing after merge considered harmful

Stephen J. Turnbull stephen at xemacs.org
Tue Jan 26 19:23:34 GMT 2010


Matthew D. Fuller writes:
 > On Wed, Jan 27, 2010 at 12:04:21AM +0900 I heard the voice of
 > Stephen J. Turnbull, and lo! it spake thus:
 > > 
 > > That reads like an indictment of the Bazaar UI to me.
 > 
 > It's an indictment of any non-trivial system.  [...]  It's an
 > annoyance I fight against continually professionally, and it's one
 > of my pet peeves in bzr support.

I'm glad we agree!

 > Armed with the underlying understanding, it's very easy to ask
 > yourself "does operation X involved changing the branch pointer",
 > and so figure out whether the param can mean anything.

Yeah, but where do you get this underlying understanding?  Where do
you even find out about the existence of the param?  I didn't know
about a_r_o until it was mentioned here, and I've got enough curiosity
(especially about DAG manipulations) to kill nine cats.

I've tried to contribute a little (most of the "survival guide" for
git users is mine, for example), but the amount that remains to be
done is overwhelming, and I don't know enough in most cases to do
much.

 > Asking after it the other way around basically boils down to "explain
 > what $X is doing without having to understand what $X does".

Yes, and that's exactly what much of the discussion on emacs-devel
amounts to, unfortunately.  You can rail against it, but even highly
intelligent professionals have their priorities, and understanding
what the VCS does is quite clearly low on the list for most hackers.

 > While there ARE unfortunately some ugly special cases in bzr (the
 > bound/checkout thing being high on the list), MOST of the behavior
 > is Obvious(tm) from the interaction of the rather few underlying
 > pieces.

Probably, but deducing behavior from knowledge of the underlying model
is not the problem here.  The problem is that Bazaar, too, has its
plumbing and porcelain, which puts several layers between the user and
the underlying model.  I think this discourages users from getting in
touch with the underlying "simple" model.  And as Eli points out, the
docs don't help much, especially not those delivered with Bazaar.



More information about the bazaar mailing list