remove: avoid a bogus warning about no tracked files when removing '.'
Previously, any files relative to the root of the repo that match the -I
patterns would be deleted, but the command exited with 1 after printing a
warning:
$ hg remove -S -I 're:.*.txt' .
removing sub1/sub2/folder/test.txt
removing sub1/sub2/test.txt
not removing .: no tracked files
--- a/mercurial/cmdutil.py Wed Nov 12 23:15:20 2014 -0500
+++ b/mercurial/cmdutil.py Sun Nov 16 00:24:23 2014 -0500
@@ -2088,7 +2088,7 @@
return True
return False
- if f in repo.dirstate or f in wctx.dirs() or insubrepo():
+ if f in repo.dirstate or f in wctx.dirs() or f == '.' or insubrepo():
continue
if os.path.exists(m.rel(join(f))):
--- a/tests/test-subrepo-deep-nested-change.t Wed Nov 12 23:15:20 2014 -0500
+++ b/tests/test-subrepo-deep-nested-change.t Sun Nov 16 00:24:23 2014 -0500
@@ -113,7 +113,7 @@
.. but first take a detour through some deep removal testing
- $ hg remove -S -I 're:.*.txt' sub1
+ $ hg remove -S -I 're:.*.txt' .
removing sub1/sub2/folder/test.txt (glob)
removing sub1/sub2/test.txt (glob)
$ hg status -S