796
796
This makes bzr stop tracking changes to a versioned file. It does
797
797
not delete the working copy.
799
You can specify one or more files, and/or --new. If you specify --new,
800
only 'added' files will be removed. If you specify both, then new files
801
in the specified directories will be removed. If the directories are
802
also new, they will also be removed.
799
takes_args = ['file+']
800
takes_options = ['verbose']
804
takes_args = ['file*']
805
takes_options = ['verbose', Option('new', help='remove newly-added files')]
803
def run(self, file_list, verbose=False):
808
def run(self, file_list, verbose=False, new=False):
804
809
tree, file_list = tree_files(file_list)
811
if file_list is None:
812
raise BzrCommandError('Specify one or more files to remove, or'
815
from bzrlib.delta import compare_trees
816
added = [compare_trees(tree.basis_tree(), tree,
817
specific_files=file_list).added]
818
file_list = sorted([f[0] for f in added[0]], reverse=True)
819
if len(file_list) == 0:
820
raise BzrCommandError('No matching files.')
805
821
tree.remove(file_list, verbose=verbose)
1860
1876
print " nick: %s" % (branch.nick,)
1862
1878
print " revid: %s" % (rh[-1],)
1879
print "Using python interpreter:", sys.executable
1881
print "Using python standard library:", os.path.dirname(site.__file__)
1882
print "Using bzrlib:",
1883
if len(bzrlib.__path__) > 1:
1884
# print repr, which is a good enough way of making it clear it's
1885
# more than one element (eg ['/foo/bar', '/foo/bzr'])
1886
print repr(bzrlib.__path__)
1888
print bzrlib.__path__[0]
1863
1891
print bzrlib.__copyright__
1864
1892
print "http://bazaar-vcs.org/"