Optimal Merge Base selection

Martin Pool mbp at sourcefrog.net
Wed Jul 13 07:18:06 BST 2005


On 12 Jul 2005, John A Meinel <john at arbash-meinel.com> wrote:

> I thought the goal of the weave was to notice that the lines from 2 had
> been superseded, and the only line which conflicts is the "john replaced
> ccc line".
> 
> I realize the "4 doesn't conflict with 2" is nice, but doesn't it
> translate higher up as well?
> 
> Maybe I'm expecting too much.

We could probably do better; more on this shortly.

> > The main problem with this is that the weave file for the inventory will
> > get rather large if it's updated for every revision; thus the idea of
> > either storing the weave in a smarter format or building it in memory
> > when we merge.
> 
> Is this using the python Pickle method of storage, or something else?
> John

This is currently using the text format in bzrlib/weavefile.py, which
looks like the attached file.

-- 
Martin
-------------- next part --------------
# bzr weave file v3
i
1 2f1c16dda6ae4eef590a6b9e50795eb3f70e1b2e

i 0
1 917f41a6434c899d998b9cb59867269c4f36e858

i 0
1 c7f18a223db5a85e3989e6aa23346d885072e9aa

i 1 2
1 59d6a263071dbf1b92df65382d1191bf00c3d37c

i 3
1 48e082154f38b13c904d7bb188cfb6c2339f2935

i 2
1 36b8c6171e2bfddf8e19e9c14352aa9600bee521

w
{ 0
. aaa
. bbb
{ 1
. stuff from martin
} 1
{ 2
[ 3
. stuff from john
] 3
{ 3
. fix up merge
} 3
[ 4
. more john stuff
} 2
] 4
{ 4
. modify john's code
} 4
[ 5
. ccc
} 0
{ 1
. ddd
} 1
{ 4
. add stuff here
} 4
] 5
{ 5
. john replaced ccc line
} 5
W


More information about the bazaar mailing list