presenting the fundamental abstractions

Matthew D. Fuller fullermd at over-yonder.net
Thu Sep 6 14:21:53 BST 2007


On Wed, Sep 05, 2007 at 03:04:15PM -0400 I heard the voice of
John Yates, and lo! it spake thus:
> 
> This is the clearest statement I have seen of this.  Sadly Martin
> stops short of enumerating those three components.  At present I am
> unaware of any introductory bzr documentation that presents such a
> picture.  Instead the documentation presents a panoply of composites
> and a set of scenarios that may guide one towards a selection.

FWIW, I agree with this, and it always seems to me that people 'get'
bzr and the meaning/use of the different composites much better once
they grok the 3 components.  It also makes it much easier to explain
things like "I just merged, why do I need to commit", and "I pushed,
how come I still see the old files on the server" and so forth, when
you can describe what components various activities affect.

I've had sketches of a Handbook floating around in my head for 10
versions or so, though not the time to get 'em on disk.  And covering
those concepts has always been the first chapter to get through.

The CVS manpage, for instance, covers its components (it only has 2,
not 3, but hey...) on each command:

       add [-k kflag] [-m 'message'] files...
              Requires: repository, working directory.
              Changes: working directory.

and you'd have a heck of a time using CVS without knowing what the two
pieces are.


There's a lot to be said for having a UI clean enough to not worry
about the nuts and bolts of a system.  But I think this is a totally
different question than that.  There's a difference between item
implementation and conceptual structure.  It's nigh on impossible to
use any tool if you don't understand the concepts its working with;
you can't feel comfortable using bzr without knowing those pieces any
more than you can feel comfortable using a text editor without
understanding what files are.


-- 
Matthew Fuller     (MF4839)   |  fullermd at over-yonder.net
Systems/Network Administrator |  http://www.over-yonder.net/~fullermd/
           On the Internet, nobody can hear you scream.



More information about the bazaar mailing list