--- a/mercurial/cmdutil.py Fri Jul 26 15:42:10 2013 -0500
+++ b/mercurial/cmdutil.py Fri Jul 26 17:08:05 2013 -0500
@@ -1976,7 +1976,7 @@
# make backup if not in target manifest
(modified, revert, remove, True, True),
(added, revert, remove, True, False),
- (removed, undelete, None, False, False),
+ (removed, undelete, None, True, False),
(deleted, revert, remove, False, False),
)
@@ -1986,7 +1986,8 @@
def handle(xlist, dobackup):
xlist[0].append(abs)
if (dobackup and not opts.get('no_backup') and
- os.path.lexists(target)):
+ os.path.lexists(target) and
+ repo[None][abs].cmp(ctx[abs])):
bakname = "%s.orig" % rel
ui.note(_('saving current version of %s as %s\n') %
(rel, bakname))