883
883
# TODO: Take a revision or remote path and list that tree instead.
885
takes_options = ['verbose', 'revision',
886
Option('non-recursive',
887
help='don\'t recurse into sub-directories'),
889
help='Print all paths from the root of the branch.'),
890
Option('unknown', help='Print unknown files'),
891
Option('versioned', help='Print versioned files'),
892
Option('ignored', help='Print ignored files'),
894
Option('null', help='Null separate the files'),
886
def run(self, revision=None, verbose=False):
887
b, relpath = Branch.open_containing('.')[0]
897
def run(self, revision=None, verbose=False,
898
non_recursive=False, from_root=False,
899
unknown=False, versioned=False, ignored=False,
903
raise BzrCommandError('Cannot set both --verbose and --null')
904
all = not (unknown or versioned or ignored)
906
selection = {'I':ignored, '?':unknown, 'V':versioned}
908
b, relpath = Branch.open_containing('.')
888
913
if revision == None:
889
914
tree = b.working_tree()
891
tree = b.revision_tree(revision.in_history(b).rev_id)
916
tree = b.revision_tree(revision[0].in_history(b).rev_id)
892
917
for fp, fc, kind, fid, entry in tree.list_files():
894
kindch = entry.kind_character()
895
print '%-8s %s%s' % (fc, fp, kindch)
918
if fp.startswith(relpath):
919
fp = fp[len(relpath):]
920
if non_recursive and '/' in fp:
922
if not all and not selection[fc]:
925
kindch = entry.kind_character()
926
print '%-8s %s%s' % (fc, fp, kindch)
929
sys.stdout.write('\0')
1358
1393
--force is given.
1360
1395
takes_args = ['branch?']
1361
takes_options = ['revision', 'force', 'merge-type',
1396
takes_options = ['revision', 'force', 'merge-type', 'reprocess',
1362
1397
Option('show-base', help="Show base revision text in "
1365
1400
def run(self, branch=None, revision=None, force=False, merge_type=None,
1401
show_base=False, reprocess=False):
1367
1402
from bzrlib.merge import merge
1368
1403
from bzrlib.merge_core import ApplyMerge3
1369
1404
if merge_type is None: