[PATCH 2 of 3] merge: remove unnecessary matcher checks

Yuya Nishihara yuya at tcha.org
Mon Mar 20 02:37:16 EDT 2017


On Sun, 19 Mar 2017 12:00:57 -0700, Durham Goode wrote:
> # HG changeset patch
> # User Durham Goode <durham at fb.com>
> # Date 1489948937 25200
> #      Sun Mar 19 11:42:17 2017 -0700
> # Node ID d598e42fa629195ecf43f438b71603df9fb66d6d
> # Parent  c2f68e8cd96f92c2fa240fe04e541c14c1bad3d8
> merge: remove unnecessary matcher checks
> 
> As part of changing manifest.diff to accept a matcher, a previous patch added
> matcher calls to each location in merge.manifestmerge that tested if 'x in mf'
> to maintain the same behavior as before. After analyzing it further, this
> matcher call isn't needed, and in fact hurts future patches ability to use the
> matcher here.
> 
> Basically, all these 'if x in mf' checks were checking if a matched file's copy
> source was in the matcher as well. This meant if you passed a matcher for just
> file foo, it would not return file bar even if foo was a copy of bar. Since
> manifestmerge cares about copy information, let's allow all lookups of copy
> sources.

Makes sense. Perhaps 2e31a17ad1bf wasn't good for copy tracing. Queued.


More information about the Mercurial-devel mailing list