[MERGE] Remove interdependency between WorkingTree and RevisionTree

Wouter van Heyst larstiq at larstiq.dyndns.org
Mon Jul 17 16:24:46 BST 2006


On Mon, Jul 17, 2006 at 09:41:34AM -0500, John Arbash Meinel wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Aaron Bentley wrote:
> > John Arbash Meinel wrote:
> >>> The old code created a RevisionTree directly, but to do a lightweight
> >>> bzr checkout of an svn repo, Jelmer needs to create an SVNRevisionTree,
> >>> rather than a bzr RevisionTree, because it is attached to the
> >>> repository, re-using Repository.revision_tree seemed a better way to
> >>> factor it, rather than having WorkingTree explicitly depend on RevisionTree.
> > 
> > Personally, I'd really like to know why an SVNRevisionTree is necessary.
> >  RevisionTree is basically a client of the public Repository interface,
> > so you would think an SVNRepository would be fine.
> > 
> > I'm not against having an SVNRevisionTree, I'd just like to know why, so
> > we can determine whether RevisionTree should be adjusted to make it more
> > generic.
> > 
> > Aaron
> 
> Because RevisionTree expects everything to be in a Weave (it uses
> get_*_weave() directly from the Repository).
> 
> And creating a VersionedFile from SVN is expensive. Versus what
> RevisionTree actually needs.

So why is RevisionTree depending on weaves? Backwards compatibility?

Wouter van Heyst




More information about the bazaar mailing list