diff mercurial/copies.py @ 16795:e9ae770eff1c

merge: show renamed on one and deleted on the other side in debug output
author Thomas Arendsen Hein <thomas@intevation.de>
date Wed, 23 May 2012 21:34:29 +0200
parents 98687cdddcb1
children 8b7cd9a998f0
line wrap: on
line diff
--- a/mercurial/copies.py	Wed May 23 20:50:16 2012 +0200
+++ b/mercurial/copies.py	Wed May 23 21:34:29 2012 +0200
@@ -287,6 +287,7 @@
         checkcopies(f, m2, m1)
 
     renamedelete = {}
+    renamedelete2 = set()
     diverge2 = set()
     for of, fl in diverge.items():
         if len(fl) == 1 or of in c1 or of in c2:
@@ -295,17 +296,21 @@
                 # renamed on one side, deleted on the other side, but filter
                 # out files that have been renamed and then deleted
                 renamedelete[of] = [f for f in fl if f in c1 or f in c2]
+                renamedelete2.update(fl) # reverse map for below
         else:
             diverge2.update(fl) # reverse map for below
 
     if fullcopy:
-        repo.ui.debug("  all copies found (* = to merge, ! = divergent):\n")
+        repo.ui.debug("  all copies found (* = to merge, ! = divergent, "
+                      "% = renamed and deleted):\n")
         for f in fullcopy:
             note = ""
             if f in copy:
                 note += "*"
             if f in diverge2:
                 note += "!"
+            if f in renamedelete2:
+                note += "%"
             repo.ui.debug("   %s -> %s %s\n" % (f, fullcopy[f], note))
     del diverge2