the inventory must be updated as merge proceeds, not at the end

Denys Duchier duchier at ps.uni-sb.de
Thu Dec 29 15:22:35 GMT 2005


Aaron Bentley <aaron.bentley at utoronto.ca> writes:

> Denys Duchier wrote:
>> My conclusion is that the surgical operations performed on the tree
>> during merge ought to be made into "tree" operations, i.e. that affect
>> both the filesystem and the inventory so that both remain accurately
>> in synch at all times.
>
> I disagree.  I think the way to handle these issues is to separate merge
> application from the tree transforms, so conflicts are sorted out in
> advance, and it is impossible to get conflicts while applying the tree
> transform.
>
> I posted my thoughts as "Transactional Tree Transforms".  I'd be
> interested to hear what you thought of them.

Actually, I think we are in agreement.  I am in favour of surgical
operations being tree operations, but I never said that they should be
performed directly on the filesystem.  In fact, we talked about it on
IRC and I described to you briefly the "shadow FS" technique that I
have been using in other projects to obtain transactional semantics on
filesystem operations and --dry-run support for free.

I think that your idea of transactional tree transforms are basically
of the same ilk, but with additional functionality motivated by the
vcs application domain.

I also have the nagging feeling that what you are thinking of is more
specifically designed for the working tree proper and may not apply
directly to providing similar facilities for files under .bzr, but I
hope I am wrong about that.

Cheers,

--Denys






More information about the bazaar mailing list