~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/repository.py

Add versionedfile.fix_parents api for correcting data post hoc.

Show diffs side-by-side

added added

removed removed

Lines of Context:
489
489
        # FIXME format 4-6 cannot be shared, this is technically faulty.
490
490
        return self.control_files._transport.has('shared-storage')
491
491
 
 
492
    @needs_write_lock
 
493
    def reconcile(self):
 
494
        """Reconcile this repository."""
 
495
        from bzrlib.reconcile import RepoReconciler
 
496
        reconciler = RepoReconciler(self)
 
497
        reconciler.reconcile()
 
498
        return reconciler
 
499
    
492
500
    @needs_read_lock
493
501
    def revision_tree(self, revision_id):
494
502
        """Return Tree for a revision on this branch.
682
690
        """See Repository.all_revision_ids()."""
683
691
        return self._revision_store.all_revision_ids(self.get_transaction())
684
692
 
 
693
    @needs_read_lock
 
694
    def get_ancestry(self, revision_id):
 
695
        """Return a list of revision-ids integrated by a revision.
 
696
        
 
697
        This is topologically sorted.
 
698
        """
 
699
        if revision_id is None:
 
700
            return [None]
 
701
        vf = self._revision_store.get_revision_file(self.get_transaction())
 
702
        return [None] + vf.get_ancestry(revision_id)
 
703
 
 
704
    @needs_write_lock
 
705
    def reconcile(self):
 
706
        """Reconcile this repository."""
 
707
        from bzrlib.reconcile import KnitReconciler
 
708
        reconciler = KnitReconciler(self)
 
709
        reconciler.reconcile()
 
710
        return reconciler
 
711
    
685
712
 
686
713
class RepositoryFormat(object):
687
714
    """A repository format.