Weird failure of a merge to local branch

Stephen J. Turnbull stephen at xemacs.org
Fri Dec 10 15:38:23 GMT 2010


mflacy at verizon.net writes:

 > I certainly agree that docstring is incorrect, given the meaning of
 > the word "mirror".

You're wrong to agree.  The docstring is in fact correct.  It's your
understanding that's wrong.  A pull will fail if it's not a fast-
forward.  Ditto push.  They really are intended to maintain mirrors,
only mirrors, and nothing other than mirrors.  I append an example.

 > I'm not certain why you chose to bring it up, except to point out
 > that I must have not scrutinized all the bzr help texts. I freely
 > admit I have not.

The reason I bring it up is that I think it's completely unreasonable
to expect you to understand it *without* carefully scrutinizing those
help texts.  Those operations simply don't do what a reasonable person
(whether a naive English speaker or someone well-versed in another
dVCS) would expect from the names.

The example:

# Gratuitous warnings about my choice of commit message suppressed.
$ pushd /tmp; mkdir -p test/a; cd test/a
$ bzr init
Created a standalone tree (format: 2a)

$ function add-1-rev { echo $1 > $1; bzr add $1; bzr commit -m $1; }
$ add-1-rev foo
adding foo
Committing to: /private/tmp/test/a/
         
added foo
Committed revision 1.
$ cd ..
$ bzr branch a b   
Branched 1 revision(s).
         
$ cd a
$ add-1-rev bar
adding bar
Committing to: /private/tmp/test/a/
         
added bar
Committed revision 2.
$ cd ../b
$ add-1-rev baz
adding baz
Committing to: /private/tmp/test/b/
         
added baz
Committed revision 2.
$ bzr pull ../a
bzr: ERROR: These branches have diverged. Use the missing command to
see how.   
Use the merge command to reconcile them.
$ bzr push ../a
bzr: ERROR: These branches have diverged.  See "bzr help
diverged-branches" for more information.



More information about the bazaar mailing list