##// END OF EJS Templates
copies: properly match result during changeset centric copy tracing...
marmoute -
r46774:92905484 default
parent child Browse files
Show More
@@ -196,9 +196,7 b' def _revinfo_getter(repo, match):'
196 196
197 197 changelogrevision = cl.changelogrevision
198 198
199 alwaysmatch = match.always()
200
201 if rustmod is not None and alwaysmatch:
199 if rustmod is not None:
202 200
203 201 def revinfo(rev):
204 202 p1, p2 = parents(rev)
@@ -356,7 +354,7 b' def _combine_changeset_copies('
356 354
357 355 alwaysmatch = match.always()
358 356
359 if rustmod is not None and alwaysmatch:
357 if rustmod is not None:
360 358 final_copies = rustmod.combine_changeset_copies(
361 359 list(revs), children_count, targetrev, revinfo, isancestor
362 360 )
@@ -396,12 +394,6 b' def _combine_changeset_copies('
396 394 elif parent == 2:
397 395 childcopies = changes.copied_from_p2
398 396
399 if not alwaysmatch:
400 childcopies = {
401 dst: src
402 for dst, src in childcopies.items()
403 if match(dst)
404 }
405 397 if childcopies:
406 398 newcopies = copies.copy()
407 399 for dest, source in pycompat.iteritems(childcopies):
@@ -447,6 +439,10 b' def _combine_changeset_copies('
447 439 for dest, (tt, source) in all_copies[targetrev].items():
448 440 if source is not None:
449 441 final_copies[dest] = source
442 if not alwaysmatch:
443 for filename in list(final_copies.keys()):
444 if not match(filename):
445 del final_copies[filename]
450 446 return final_copies
451 447
452 448
@@ -872,6 +872,19 b' We upgrade a repository that is not usin'
872 872 Test copy information chaining
873 873 ==============================
874 874
875 Check that matching only affect the destination and not intermediate path
876 -------------------------------------------------------------------------
877
878 The two status call should give the same value for f
879
880 $ hg status --copies --rev 'desc("i-0")' --rev 'desc("a-2")'
881 A f
882 a
883 R a
884 $ hg status --copies --rev 'desc("i-0")' --rev 'desc("a-2")' f
885 A f
886 a (no-changeset no-compatibility !)
887
875 888 merging with unrelated change does not interfere with the renames
876 889 ---------------------------------------------------------------
877 890
General Comments 0
You need to be logged in to leave comments. Login now