mercurial/commands.py
changeset 4262 ad33eeeeb50a
parent 4259 bda63383d529
child 4276 cb6107f78b92
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -2256,7 +2256,8 @@ def revert(ui, repo, *pats, **opts):
         def handle(xlist, dobackup):
             xlist[0].append(abs)
             update[abs] = 1
-            if dobackup and not opts['no_backup'] and os.path.exists(rel):
+            if (dobackup and not opts['no_backup'] and
+                (os.path.islink(rel) or os.path.exists(rel))):
                 bakname = "%s.orig" % rel
                 ui.note(_('saving current version of %s as %s\n') %
                         (rel, bakname))