bzr send usage

Colin D Bennett colin at gibibit.com
Wed Jun 11 14:45:17 BST 2008


On Tue, 10 Jun 2008 17:00:13 +1000
Andrew Bennetts <andrew at canonical.com> wrote:

> Ian Clatworthy wrote:
> > Aaron Bentley wrote:
> > > Ian Clatworthy wrote:
> > >> # Bazaar merge directive format 2 (Bazaar 0.90)
> > >> # revision_id: ian.clatworthy at canonical.com-20080610045325-\
> > >> #   hi3yug3nasoe6e1h
> > >> # target_branch: ../Development1/
> > >> # testament_sha1: faebafc1e65c0665e9bf55332d74bbfdf373afa0
> > >> # timestamp: 2008-06-10 15:17:34 +1000
> > >> # base_revision_id: ian.clatworthy at canonical.com-20080610013832-\
> > >> #   9dt6c5h67eckiezo
> > > 
> > > Please don't submit unmergeable merge directives.
> > > 
> > > Bundle Buggy is freaking out because it doesn't have a copy of
> > > ian.clatworthy at canonical.com-20080610013832-9dt6c5h67eckiezo and
> > > it can't get one from ../Development1
> > > 
> > > Please either use bzr.dev as the submit branch, or supply some
> > > other valid external URL for the submit branch.
> > 
> > I've set public_branch to bzr.dev in my locations.conf for these
> > branches now. Does that fix it? I thought I needed to keep the
> > submit branch as the previous one in the loom (post export) so
> > that the preview diff came out correctly?
> 
> AIUI, the way to send a branch that depends on another, as-yet
> unmerged branch, is to specify that unmerged branch as the
> SUBMIT_BRANCH.  That way the target_branch will be the unmerged
> branch, and the base_revision_id can be found in the target_branch.
> 
> e.g.:
> 
>   $ cd feature-1
>   $ bzr send
>   $ cd ..
>   $ bzr branch feature-1 feature-2
>   $ cd feature-2
>   ... hack hack hack ...
>   $ bzr send ../feature-1
> 
> That final line will send a bundle of just the changes in feature-2
> relative to feature-1, with target_branch etc. set appropriately.
> 
> To be honest, I don't think we've got the UI for send 100% right
> yet.  Users keep struggling with it.

The first time I tried to use 'bzr send', I had a hard time figuring
out what a 'submit branch' was.  I was reading the bzr help on the send
command, but I had to search the internet for some examples of people
actually using the send command before I realized how to use it (and
how simple it really was!).

I think that refining and clarifying the help topic for 'send' will
help a lot.  One thing I had trouble with was how the help refers to
the "submit branch" without ever explaining it.  Here is the first
reference to "submit branch" in the help: 
 
  The submit branch defaults to the parent, but can be overridden.  Both
  submit branch and public branch will be remembered if supplied.
  
I think that before this we should add something like (very roughly):

  The submit branch specifies the baseline upon which the merge
  directive is based.  The merge directive will consist of the changes
  to the source branch [terminology?] (the branch containing the current
  directory, or specified by -f/--from) relative to the submit branch.

I know that Bazaar refers to a "submit branch" in other places, such as
the revisionspec "submit:", and I don't fully understand the meaning
there.  It would be nice to add a definition of "submit branch" to the
BzrGlossary.

Colin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20080611/13de2603/attachment.pgp 


More information about the bazaar mailing list