diff --git a/mercurial/copies.py b/mercurial/copies.py --- a/mercurial/copies.py +++ b/mercurial/copies.py @@ -134,10 +134,6 @@ if t[v] != k: # file wasn't renamed back to itself (i.e. case 4, not 3) t[k] = t[v] - if v not in dst: - # chain was a rename, not a copy - # this deletes the copy for 'b' in case 4 - del t[v] if v in src: # file is a copy of an existing file, i.e. case 6. t[k] = v