~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/builtins.py

 * New 'reconcile' command will check branch consistency and repair indexes
   that can become out of sync in pre 0.8 formats. (Robert Collins,
   Aaron Bentley)

Show diffs side-by-side

added added

removed removed

Lines of Context:
770
770
            print fip
771
771
 
772
772
 
 
773
class cmd_reconcile(Command):
 
774
    """Reconcile bzr metadata in a branch.
 
775
 
 
776
    This can correct data mismatches that may have been caused by
 
777
    previous ghost operations or bzr upgrades. You should only
 
778
    need to run this command if 'bzr check' or a bzr developer 
 
779
    advises you to run it.
 
780
 
 
781
    If a second branch is provided, cross-branch reconciliation is
 
782
    also attempted, which will check that data like the tree root
 
783
    id which was not present in very early bzr versions is represented
 
784
    correctly in both branches.
 
785
 
 
786
    At the same time it is run it may recompress data resulting in 
 
787
    a potential saving in disk space or performance gain.
 
788
 
 
789
    The branch *MUST* be on a listable system such as local disk or sftp.
 
790
    """
 
791
    takes_args = ['branch?']
 
792
 
 
793
    def run(self, branch="."):
 
794
        from bzrlib.reconcile import reconcile
 
795
        dir = bzrlib.bzrdir.BzrDir.open(branch)
 
796
        reconcile(dir)
 
797
 
 
798
 
773
799
class cmd_revision_history(Command):
774
800
    """Display list of revision ids on this branch."""
775
801
    hidden = True