diff -r 71dcce391a44 -r 6883c2363f44 mercurial/cmdutil.py --- a/mercurial/cmdutil.py Wed Mar 28 11:42:17 2012 +0200 +++ b/mercurial/cmdutil.py Wed Mar 28 11:42:17 2012 +0200 @@ -1369,11 +1369,8 @@ if abs not in names: names[abs] = m.rel(abs), m.exact(abs) + # get the list of subrepos that must be reverted targetsubs = [s for s in repo[node].substate if m(s)] - if targetsubs and not opts.get('no_backup'): - msg = _("cannot revert subrepos without --no-backup") - raise util.Abort(msg) - m = scmutil.matchfiles(repo, names) changes = repo.status(match=m)[:4] modified, added, removed, deleted = map(set, changes)