~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/workingtree.py

  • Committer: Aaron Bentley
  • Date: 2007-01-12 04:48:18 UTC
  • mto: (2255.6.1 dirstate)
  • mto: This revision was merged to the branch mainline in revision 2322.
  • Revision ID: aaron.bentley@utoronto.ca-20070112044818-nnw6iunriqq073qc
Implement tree comparison for tree references

Show diffs side-by-side

added added

removed removed

Lines of Context:
312
312
    def requires_rich_root(self):
313
313
        return self._format.requires_rich_root
314
314
 
 
315
    def supports_tree_reference(self):
 
316
        return getattr(self._format, 'supports_tree_reference', False)
 
317
 
315
318
    def _set_inventory(self, inv, dirty):
316
319
        """Set the internal cached inventory.
317
320
 
1968
1971
 
1969
1972
class WorkingTree4(WorkingTree3):
1970
1973
 
 
1974
    def _serialize(self, inventory, out_file):
 
1975
        xml7.serializer_v7.write_inventory(self._inventory, out_file)
 
1976
 
 
1977
    def _deserialize(selt, in_file):
 
1978
        return xml7.serializer_v7.read_inventory(in_file)
 
1979
 
 
1980
    def _comparison_data(self, entry, path):
 
1981
        kind, executable, stat_value = \
 
1982
            WorkingTree3._comparison_data(self, entry, path)
 
1983
        if kind == 'directory' and entry.kind == 'tree-reference':
 
1984
            kind = 'tree-reference'
 
1985
        return kind, executable, stat_value
 
1986
 
1971
1987
    def add_reference(self, sub_tree):
1972
1988
        try:
1973
1989
            sub_tree_path = self.relpath(sub_tree.basedir)
1988
2004
        self.inventory.add(entry)
1989
2005
        self._write_inventory(self.inventory)
1990
2006
 
1991
 
    def _serialize(self, inventory, out_file):
1992
 
        xml7.serializer_v7.write_inventory(self._inventory, out_file)
1993
 
 
1994
 
    def _deserialize(selt, in_file):
1995
 
        return xml7.serializer_v7.read_inventory(in_file)
 
2007
    def get_reference_revision(self, entry, path=None):
 
2008
        if path is None:
 
2009
            path = self.id2path(entry.file_id)
 
2010
        return WorkingTree.open(self.abspath(path)).last_revision()
1996
2011
 
1997
2012
 
1998
2013
def get_conflicted_stem(path):
2289
2304
 
2290
2305
    requires_rich_root = True
2291
2306
 
 
2307
    supports_tree_reference = True
 
2308
 
2292
2309
    def __init__(self):
2293
2310
        WorkingTreeFormat3.__init__(self)
2294
2311