Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/localrepo.py @ 3956:497c69726a04
Fix removed file cornercase for CVS convert-repo
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Fri, 22 Dec 2006 17:59:37 -0600 |
parents | 79cf097774ef |
children | c190df14338c |
comparison
equal
deleted
inserted
replaced
3955:9af4b853ed4d | 3956:497c69726a04 |
---|---|
725 remove.append(f) | 725 remove.append(f) |
726 | 726 |
727 # update manifest | 727 # update manifest |
728 m1.update(new) | 728 m1.update(new) |
729 remove.sort() | 729 remove.sort() |
730 removed = [] | |
730 | 731 |
731 for f in remove: | 732 for f in remove: |
732 if f in m1: | 733 if f in m1: |
733 del m1[f] | 734 del m1[f] |
734 mn = self.manifest.add(m1, tr, linkrev, c1[0], c2[0], (new, remove)) | 735 removed.append(f) |
736 mn = self.manifest.add(m1, tr, linkrev, c1[0], c2[0], (new, removed)) | |
735 | 737 |
736 # add changeset | 738 # add changeset |
737 new = new.keys() | 739 new = new.keys() |
738 new.sort() | 740 new.sort() |
739 | 741 |
745 edittext.append("") | 747 edittext.append("") |
746 edittext.append("HG: user: %s" % user) | 748 edittext.append("HG: user: %s" % user) |
747 if p2 != nullid: | 749 if p2 != nullid: |
748 edittext.append("HG: branch merge") | 750 edittext.append("HG: branch merge") |
749 edittext.extend(["HG: changed %s" % f for f in changed]) | 751 edittext.extend(["HG: changed %s" % f for f in changed]) |
750 edittext.extend(["HG: removed %s" % f for f in remove]) | 752 edittext.extend(["HG: removed %s" % f for f in removed]) |
751 if not changed and not remove: | 753 if not changed and not remove: |
752 edittext.append("HG: no files changed") | 754 edittext.append("HG: no files changed") |
753 edittext.append("") | 755 edittext.append("") |
754 # run editor in the repository root | 756 # run editor in the repository root |
755 olddir = os.getcwd() | 757 olddir = os.getcwd() |
763 if not lines: | 765 if not lines: |
764 return None | 766 return None |
765 text = '\n'.join(lines) | 767 text = '\n'.join(lines) |
766 if branchname: | 768 if branchname: |
767 extra["branch"] = branchname | 769 extra["branch"] = branchname |
768 n = self.changelog.add(mn, changed + remove, text, tr, p1, p2, | 770 n = self.changelog.add(mn, changed + removed, text, tr, p1, p2, |
769 user, date, extra) | 771 user, date, extra) |
770 self.hook('pretxncommit', throw=True, node=hex(n), parent1=xp1, | 772 self.hook('pretxncommit', throw=True, node=hex(n), parent1=xp1, |
771 parent2=xp2) | 773 parent2=xp2) |
772 tr.close() | 774 tr.close() |
773 | 775 |
774 if use_dirstate or update_dirstate: | 776 if use_dirstate or update_dirstate: |
775 self.dirstate.setparents(n) | 777 self.dirstate.setparents(n) |
776 if use_dirstate: | 778 if use_dirstate: |
777 self.dirstate.update(new, "n") | 779 self.dirstate.update(new, "n") |
778 self.dirstate.forget(remove) | 780 self.dirstate.forget(removed) |
779 | 781 |
780 self.hook("commit", node=hex(n), parent1=xp1, parent2=xp2) | 782 self.hook("commit", node=hex(n), parent1=xp1, parent2=xp2) |
781 return n | 783 return n |
782 | 784 |
783 def walk(self, node=None, files=[], match=util.always, badmatch=None): | 785 def walk(self, node=None, files=[], match=util.always, badmatch=None): |