tree transform is malformed ??
Robert Collins
robertc at robertcollins.net
Mon May 1 23:53:48 BST 2006
On Mon, 2006-05-01 at 08:02 -0400, Aaron Bentley wrote:
> Robert Collins wrote:
> > On Mon, 2006-05-01 at 02:17 -0400, Aaron Bentley wrote:
> >
> >>
> >>The meat is: call resolve_conflicts(), to resolve the conflicts and
> >>get
> >>a list of the raw conflicts that were encountered, and the
> >>resolutions
> >>done. Call cook_conflicts to get a list of Conflict objects, which
> >>can
> >>be converted to strings and/or saved in the the working tree. Emit
> >>the
> >>conflicts as warnings.
> >
> >
> > Ok. What will this do with the following scenario:
> >
> > Branch A has a dir 'foo' in the HEAD revision.
> > Branch B is location at dir 'foo/bar' in the branch directory of branch
> > A.
> >
> > 'bzr checkout' in the branch dir of branch A:
> >
> > $ls -a
> > foo
> > .bzr
> >
> > $ls -a foo
> > bar
> >
> > $ls -a foo/bar
> > .bzr
> >
> > $bzr checkout
> >
> > What I want this to do is to leave foo/bar in place and untouched.
>
> I can't think of anything in the current codebase that will handle this
> situation the way you want. If you implemented my suggestion, the
> existing foo will be renamed to foo.moved when you checked out.
>
> One way to do what you want would be to write a conflict resolver that
> resolved creation of an existing directory by versioning the existing
> directory, instead of by renaming the existing directory.
>
> And what about creating existing files, then? I think it gets very DWIM
> very fast.
I think this is where the prior discussion failed.
I think it is a requirement for supporting nested trees that the example
I provided above works. As for files, I dont care. Note that there is a
separate specification for merges that says when two directories have
the same name, and neither id is present elsewhere, they should have
their contents combined rather than one become foo.moved.
Rob
--
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: 191 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060502/bc933df2/attachment.pgp
More information about the bazaar
mailing list