@@ -4057,6 +4057,8 @@
_('commit even if some hunks fail')),
('', 'exact', None,
_('apply patch to the nodes from which it was generated')),
+ ('', 'prefix', '',
+ _('apply patch to directory relative to the root'), _('DIR')),
('', 'import-branch', None,
_('use any branch information in patch (implied by --exact)'))] +
commitopts + commitopts2 + similarityopts,
@@ -4156,6 +4158,8 @@
raise util.Abort(_('cannot use --similarity with --bypass'))
if opts.get('exact') and opts.get('edit'):
raise util.Abort(_('cannot use --exact with --edit'))
+ if opts.get('exact') and opts.get('prefix'):
+ raise util.Abort(_('cannot use --exact with --prefix'))
if update:
cmdutil.checkunfinished(repo)
@@ -268,7 +268,7 @@
heads: rev, topo, active, closed, style, template
help: extension, command, keyword
identify: rev, num, id, branch, tags, bookmarks, ssh, remotecmd, insecure
- import: strip, base, edit, force, no-commit, bypass, partial, exact, import-branch, message, logfile, date, user, similarity
+ import: strip, base, edit, force, no-commit, bypass, partial, exact, prefix, import-branch, message, logfile, date, user, similarity
incoming: force, newest-first, bundle, rev, bookmarks, branch, patch, git, limit, no-merges, stat, graph, style, template, ssh, remotecmd, insecure, subrepos
locate: rev, print0, fullpath, include, exclude
manifest: rev, all, template
@@ -112,6 +112,9 @@
$ hg import --bypass --similarity 50 ../test.diff
abort: cannot use --similarity with --bypass
[255]
+ $ hg import --exact --prefix dir/ ../test.diff
+ abort: cannot use --exact with --prefix
+ [255]
Test commit editor
(this also tests that editor is invoked, if the patch doesn't contain