[BUG] when doing a bzr pull with conflicts

Robert Collins robertc at robertcollins.net
Mon Sep 19 03:04:17 BST 2005

On Sun, 2005-09-18 at 01:40 -0400, James Blackwell wrote:
> On Wed, Sep 14, 2005 at 02:39:10PM -0700, Rob Browning wrote:
> > Robert Collins <robertc at robertcollins.net> writes:
> > 
> > > That said, when you have divergent branches, you probably want to be
> > > doing a 'merge' rather than a 'pull'. Pull is equivalent to CVS
> > > update or SVN update, which only makes sense when you are still on
> > > the same branch - i.e. you have not committed, which creates a
> > > unique branch.
> > 
> > If I understood you correctly, then it seems like this might confuse
> > some cvs and svn users since in cvs/svn, update actually does do
> > something like a merge with the "current branch", and you would
> > normally run update whether you've committed or not.
> I talked with Abentley about this awhile ago. My personal opinion is that
> users want "Get missing code from there and put it here" and that the tool
> can tell whether it should be doing a merge or a pull, that there should
> just be one command.

I think users will care intensely.

Heres a scenario:

I have a branch, the mainline for project Foo.
you branch from me and do some work....
commit -m 'delete random stuff' ; ...
commit -m 'add in replacements' ; ...
commit -m 'fix bug 45'

Now, I want to get everything you've done..
bzr merge $jblack;
bzr commit -m 'merge bug fux 45 from jblack'.

I'd like to see the following in bzr log:
r 3
message: 'merge bug fux 45 from jblack'
message: 'what I had before'

If the tool appends history, which its able to in this scenario, what
I'd see is:
message: 'fix bug 45'
message: 'add in replacements'
message: 'delete random stuff'
message: 'what I had before'

Which is _not_ what ever existed in my mainline, and not what I want
people to see when they walk back along my history.

I think that we need two semantically different commands,
$collapse-and-let-me-commit and $append-their-stuff-to-mine.
$append-their-stuff-to-mine could well degrade into
$collapse-and-let-me-commit if the branches have diverged.


GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20050919/781fa6fa/attachment.pgp 

More information about the bazaar mailing list