[BUG] when doing a bzr pull with conflicts
Erik Bågfors
zindar at gmail.com
Mon Sep 19 09:54:04 BST 2005
2005/9/19, Robert Collins <robertc at robertcollins.net>:
> 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'
> ====
> r2
> message: 'what I had before'
> ...
>
>
> If the tool appends history, which its able to in this scenario, what
> I'd see is:
> r5
> message: 'fix bug 45'
> ====
> r4
> message: 'add in replacements'
> ====
> r3
> message: 'delete random stuff'
> ====
> r2
> 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 want to see a mix of this.
I'd like to see
r 3
message: 'merge bug fux 45 from jblack'
committer: robertc at ...
Merged commits:
message: 'fix bug 45'
committer: jblack at ...
====
message: 'add in replacements'
committer: jblack at ...
====
message: 'delete random stuff'
committer: jblack at ...
====
====
r2
message: 'what I had before'
committer: robertc at ...
...
And when running with -v (or --show-ids) I'd like to see something like
revno: r 3
revid: A4
message: 'merge bug fux 45 from jblack'
committer: robertc at ...
Merged commits:
revid: B3
message: 'fix bug 45'
committer: jblack at ...
====
revid: B2
message: 'add in replacements'
committer: jblack at ...
====
revid: B1
message: 'delete random stuff'
committer: jblack at ...
====
====
revno: r2
revid: A3
message: 'what I had before'
committer: robertc at ...
Where revid of course should be the normal
"mbp at sourcefrog.net-20050913003944-4890c9f8f04f37a5"-like stuff.
Then I should be able to go
bzr diff -r revid:B2..revid:B3
to be able to find out what jblack did there. Even if I get it from
your branch.
Don't know if this is doable, but it would be great I think.
Regards,
Erik
More information about the bazaar
mailing list