707 # \ / merging rev3 and rev4 should use bar@rev2 |
707 # \ / merging rev3 and rev4 should use bar@rev2 |
708 # \- 2 --- 4 as the merge base |
708 # \- 2 --- 4 as the merge base |
709 # |
709 # |
710 meta["copy"] = cp |
710 meta["copy"] = cp |
711 if not manifest2: # not a branch merge |
711 if not manifest2: # not a branch merge |
712 meta["copyrev"] = hex(manifest1.get(cp, nullid)) |
712 meta["copyrev"] = hex(manifest1[cp]) |
713 fp2 = nullid |
713 fp2 = nullid |
714 elif fp2 != nullid: # copied on remote side |
714 elif fp2 != nullid: # copied on remote side |
715 meta["copyrev"] = hex(manifest1.get(cp, nullid)) |
715 meta["copyrev"] = hex(manifest1[cp]) |
716 elif fp1 != nullid: # copied on local side, reversed |
716 elif fp1 != nullid: # copied on local side, reversed |
717 meta["copyrev"] = hex(manifest2.get(cp)) |
717 meta["copyrev"] = hex(manifest2[cp]) |
718 fp2 = fp1 |
718 fp2 = fp1 |
719 elif cp in manifest2: # directory rename on local side |
719 elif cp in manifest2: # directory rename on local side |
720 meta["copyrev"] = hex(manifest2[cp]) |
720 meta["copyrev"] = hex(manifest2[cp]) |
721 else: # directory rename on remote side |
721 else: # directory rename on remote side |
722 meta["copyrev"] = hex(manifest1.get(cp, nullid)) |
722 meta["copyrev"] = hex(manifest1[cp]) |
723 self.ui.debug(_(" %s: copy %s:%s\n") % |
723 self.ui.debug(_(" %s: copy %s:%s\n") % |
724 (fn, cp, meta["copyrev"])) |
724 (fn, cp, meta["copyrev"])) |
725 fp1 = nullid |
725 fp1 = nullid |
726 elif fp2 != nullid: |
726 elif fp2 != nullid: |
727 # is one parent an ancestor of the other? |
727 # is one parent an ancestor of the other? |