diff -r eca88f5fbcb2 -r 324ded1aa2ab mercurial/copies.py --- a/mercurial/copies.py Fri Mar 05 14:26:52 2021 -0800 +++ b/mercurial/copies.py Fri Mar 05 14:26:56 2021 -0800 @@ -761,9 +761,12 @@ base = None if a.rev() != nullrev: base = x + x_copies = _forwardcopies(a, x) + y_copies = _forwardcopies(a, y, base, match=match) + x_backward_renames = _reverse_renames(x_copies, x, match) copies = _chain( - _backwardrenames(x, a, match=match), - _forwardcopies(a, y, base, match=match), + x_backward_renames, + y_copies, ) _filter(x, y, copies) return copies