diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -5511,7 +5511,8 @@ def revert(ui, repo, *pats, **opts): ctx = scmutil.revsingle(repo, opts.get('rev')) - if not pats and not (opts.get('all') or opts.get('interactive')): + if (not (pats or opts.get('include') or opts.get('exclude') or + opts.get('all') or opts.get('interactive'))): msg = _("no files or directories specified") if p2 != nullid: hint = _("uncommitted merge, use --all to discard all changes," diff --git a/tests/test-revert.t b/tests/test-revert.t --- a/tests/test-revert.t +++ b/tests/test-revert.t @@ -201,12 +201,26 @@ call `hg revert` with no file specified (use --all to revert all files, or 'hg update 1' to update) [255] +call `hg revert` with -I +--------------------------- + + $ echo a >> a + $ hg revert -I a + reverting a + +call `hg revert` with -X +--------------------------- + + $ echo a >> a + $ hg revert -X d + reverting a + call `hg revert` with --all --------------------------- $ hg revert --all -rtip reverting a - + $ rm *.orig Issue332: confusing message when reverting directory ----------------------------------------------------