Comments
Patch
@@ -4930,20 +4930,23 @@ def resolve(ui, repo, *pats, **opts):
if not ms:
raise util.Abort(_('no merge in progress; '
'resolve command not applicable'))
m = scmutil.match(repo[None], pats, opts)
ret = 0
+ didwork = False
for f in ms:
if not m(f):
continue
+ didwork = True
+
if show:
if nostatus:
ui.write("%s\n" % f)
else:
ui.write("%s %s\n" % (ms[f].upper(), f),
label='resolve.' +
{'u': 'unresolved', 'r': 'resolved'}[ms[f]])
elif mark:
@@ -4966,16 +4969,20 @@ def resolve(ui, repo, *pats, **opts):
finally:
ui.setconfig('ui', 'forcemerge', '', 'resolve')
ms.commit()
# replace filemerge's .orig file with our resolve file
util.rename(a + ".resolve", a + ".orig")
ms.commit()
+
+ if not didwork and pats:
+ ui.warn(_("no work performed. specified path(s) invalid?\n"))
+
return ret
@command('revert',
[('a', 'all', None, _('revert all changes when no arguments given')),
('d', 'date', '', _('tipmost revision matching date'), _('DATE')),
('r', 'rev', '', _('revert to the specified revision'), _('REV')),
('C', 'no-backup', None, _('do not save backup copies of files')),
] + walkopts + dryrunopts,
@@ -26,16 +26,20 @@ failing merge
use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
[1]
resolve -l should contain an unresolved entry
$ hg resolve -l
U file
+resolving an unknown path emits a warning
+ $ hg resolve -m does-not-exist
+ no work performed. specified path(s) invalid?
+
resolve the failure
$ echo resolved > file
$ hg resolve -m file
$ hg commit -m 'resolved'
resolve -l should error since no merge in progress