diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -3356,7 +3356,7 @@ def identify(ui, repo, source=None, rev= _('use any branch information in patch (implied by --exact)'))] + commitopts + commitopts2 + similarityopts, _('[OPTION]... PATCH...')) -def import_(ui, repo, patch1, *patches, **opts): +def import_(ui, repo, patch1=None, *patches, **opts): """import an ordered set of patches Import a list of patches and commit them individually (unless @@ -3418,6 +3418,10 @@ def import_(ui, repo, patch1, *patches, Returns 0 on success. """ + + if not patch1: + raise util.Abort(_('need at least one patch to import')) + patches = (patch1,) + patches date = opts.get('date') diff --git a/tests/test-import.t b/tests/test-import.t --- a/tests/test-import.t +++ b/tests/test-import.t @@ -10,6 +10,11 @@ $ echo line 2 >> a/a $ hg --cwd a ci -u someone -d '1 0' -m'second change' +import with no args: + + $ hg --cwd a import + abort: need at least one patch to import + [255] generate patches for the test