Maintaining multi-layered, interdependent branches

Ben Finney ben at benfinney.id.au
Sat Jan 10 01:10:36 GMT 2009


Howdy all,

The “loom” feature seems targeted at maintaining multiple branches
from some starting point, where the branches have complex dependency
relationships. Which is good, because that's what I want to do.

The only documentation I can find, though, is the ‘bzr help loom’
command summary, which assumes I know how looms work, and the
<URL:http://bazaar-vcs.org/Documentation/LoomAsSmarterQuilt> page,
which assumes I know the workflow of ‘quilt’.

I know neither, so I'm quite confused.


Here's a use case: Arthur is developing various branches against an
upstream, Bernard, who is only sporadic in responding to Arthur's
patches. He has the following branches to maintain:

    upstream-checkout
    bugfix-foo
    feature-wibble (depends on bugfix-foo)
    feature-wobble (depends on bugfix-foo)
    bugfix-bar (depends on feature-wobble)
    bugfix-baz
    feature-warble (depends on feature-wobble and bugfix-baz)
    feature-weeble (depends on bugfix-bar)

While Arthur is developing, Bernard intermittently announces new
revisions, so Arthur must also update his ‘upstream’ checkout. Arthur
isn't sure whether the dependencies among his local branches will
change over time, or which ones will be good for submitting back to
Bernard in what order.


Questions in no sensible order:

What is the proposed workflow for Arthur?

How should Arthur set up his repositories, branches, looms, and
threads?

What does Arthur need to do to move from a “separate branch per line
of development” model, to one where looms and threads are involved?

What changes in workflow are required? What new things should Arthur
be doing while he develops the branches? What existing practices
should he not be doing?

What procedure should Arthur follow to send changes from his work to
Bernard? Is anything irrevocably changed by doing so, or is there some
caveat to avoid irrevocable changes when doing this?

How do the looms and threads Arthur sets up interact with other,
non-loom branches he has made from the same upstream? What things are
possible or impossible with those interactions?

-- 
 \     “Admiration, n. Our polite recognition of another's resemblance |
  `\    to ourselves.” —Ambrose Bierce, _The Devil's Dictionary_, 1906 |
_o__)                                                                  |
Ben Finney




More information about the bazaar mailing list