diff hgext/largefiles/overrides.py @ 23493:28f01c318c05

largefiles: don't use 'r' action for standin that doesn't exist When merging and the remote has turned a normal file into a largefile and the user chooses to keep the local largefile, we use the 'r' action for the remote largefile standin. This is wrong, since that file does not exist in the parent of the working copy. Use 'k', which does nothing but debug logging, instead.
author Martin von Zweigbergk <martinvonz@google.com>
date Fri, 05 Dec 2014 16:45:52 -0800
parents da733837cdd0
children ca54fb3d71ce
line wrap: on
line diff
--- a/hgext/largefiles/overrides.py	Fri Dec 05 16:51:37 2014 -0800
+++ b/hgext/largefiles/overrides.py	Fri Dec 05 16:45:52 2014 -0800
@@ -444,7 +444,12 @@
                 actions['r'].append((lfile, None, 'replaced by standin'))
                 newglist.append((standin, (p2.flags(standin),), msg))
             else: # keep local normal file
-                actions['r'].append((standin, None, 'replaced by non-standin'))
+                if branchmerge:
+                    actions['k'].append((standin, None,
+                                         'replaced by non-standin'))
+                else:
+                    actions['r'].append((standin, None,
+                                         'replaced by non-standin'))
         elif lfutil.standin(f) in p1 and lfutil.standin(f) not in removes:
             # Case 2: largefile in the working copy, normal file in
             # the second parent