D6604: copies: follow copies across merge base without source file (issue6163)

Yuya Nishihara yuya at tcha.org
Thu Jul 11 20:14:33 EDT 2019

>   We trace copies from the 'modify x' commit to commit 4 by going via
>   the merge base (commit 0). When tracing file 'y' (_tracefile()) in the
>   first case, we immediately find the rename from 'x'. We check to see
>   if 'x' exists in the merge base, which it does, so we consider it a
>   valid copy. In the second case, 'x' does not exist in the merge base,
>   so it's not considered a valid copy. As a workaround, this patch makes
>   it so we also attempt the check in mergecopies's base commit (commit 1
>   in the second case). That feels pretty ugly to me, but I don't have
>   any better ideas.

Maybe better to add some inline doc?

More information about the Mercurial-devel mailing list