Show More
@@ -824,6 +824,7 b' class localrepository:' | |||||
824 | m1 = self.manifest.read(c1[0]) |
|
824 | m1 = self.manifest.read(c1[0]) | |
825 | mf1 = self.manifest.readflags(c1[0]) |
|
825 | mf1 = self.manifest.readflags(c1[0]) | |
826 | m2 = self.manifest.read(c2[0]) |
|
826 | m2 = self.manifest.read(c2[0]) | |
|
827 | changed = [] | |||
827 |
|
828 | |||
828 | if orig_parent == p1: |
|
829 | if orig_parent == p1: | |
829 | update_dirstate = 1 |
|
830 | update_dirstate = 1 | |
@@ -864,6 +865,7 b' class localrepository:' | |||||
864 | continue |
|
865 | continue | |
865 |
|
866 | |||
866 | mm[f] = r.add(t, {}, tr, linkrev, fp1, fp2) |
|
867 | mm[f] = r.add(t, {}, tr, linkrev, fp1, fp2) | |
|
868 | changed.append(f) | |||
867 | if update_dirstate: |
|
869 | if update_dirstate: | |
868 | self.dirstate.update([f], "n") |
|
870 | self.dirstate.update([f], "n") | |
869 | except IOError: |
|
871 | except IOError: | |
@@ -878,7 +880,7 b' class localrepository:' | |||||
878 |
|
880 | |||
879 | mnode = self.manifest.add(mm, mfm, tr, linkrev, c1[0], c2[0]) |
|
881 | mnode = self.manifest.add(mm, mfm, tr, linkrev, c1[0], c2[0]) | |
880 | user = user or self.ui.username() |
|
882 | user = user or self.ui.username() | |
881 |
n = self.changelog.add(mnode, |
|
883 | n = self.changelog.add(mnode, changed, text, tr, p1, p2, user, date) | |
882 | tr.close() |
|
884 | tr.close() | |
883 | if update_dirstate: |
|
885 | if update_dirstate: | |
884 | self.dirstate.setparents(n, nullid) |
|
886 | self.dirstate.setparents(n, nullid) | |
@@ -887,6 +889,8 b' class localrepository:' | |||||
887 | match = util.always, force=False): |
|
889 | match = util.always, force=False): | |
888 | commit = [] |
|
890 | commit = [] | |
889 | remove = [] |
|
891 | remove = [] | |
|
892 | changed = [] | |||
|
893 | ||||
890 | if files: |
|
894 | if files: | |
891 | for f in files: |
|
895 | for f in files: | |
892 | s = self.dirstate.state(f) |
|
896 | s = self.dirstate.state(f) | |
@@ -962,6 +966,9 b' class localrepository:' | |||||
962 | continue |
|
966 | continue | |
963 |
|
967 | |||
964 | new[f] = r.add(t, meta, tr, linkrev, fp1, fp2) |
|
968 | new[f] = r.add(t, meta, tr, linkrev, fp1, fp2) | |
|
969 | # remember what we've added so that we can later calculate | |||
|
970 | # the files to pull from a set of changesets | |||
|
971 | changed.append(f) | |||
965 |
|
972 | |||
966 | # update manifest |
|
973 | # update manifest | |
967 | m1.update(new) |
|
974 | m1.update(new) | |
@@ -976,16 +983,21 b' class localrepository:' | |||||
976 | new.sort() |
|
983 | new.sort() | |
977 |
|
984 | |||
978 | if not text: |
|
985 | if not text: | |
979 | edittext = "\n" + "HG: manifest hash %s\n" % hex(mn) |
|
986 | edittext = "" | |
980 | edittext += "".join(["HG: changed %s\n" % f for f in new]) |
|
987 | if p2 != nullid: | |
|
988 | edittext += "HG: branch merge\n" | |||
|
989 | edittext += "\n" + "HG: manifest hash %s\n" % hex(mn) | |||
|
990 | edittext += "".join(["HG: changed %s\n" % f for f in changed]) | |||
981 | edittext += "".join(["HG: removed %s\n" % f for f in remove]) |
|
991 | edittext += "".join(["HG: removed %s\n" % f for f in remove]) | |
|
992 | if not changed and not remove: | |||
|
993 | edittext += "HG: no files changed\n" | |||
982 | edittext = self.ui.edit(edittext) |
|
994 | edittext = self.ui.edit(edittext) | |
983 | if not edittext.rstrip(): |
|
995 | if not edittext.rstrip(): | |
984 | return None |
|
996 | return None | |
985 | text = edittext |
|
997 | text = edittext | |
986 |
|
998 | |||
987 | user = user or self.ui.username() |
|
999 | user = user or self.ui.username() | |
988 |
n = self.changelog.add(mn, |
|
1000 | n = self.changelog.add(mn, changed, text, tr, p1, p2, user, date) | |
989 | tr.close() |
|
1001 | tr.close() | |
990 |
|
1002 | |||
991 | self.dirstate.setparents(n) |
|
1003 | self.dirstate.setparents(n) | |
@@ -1010,7 +1022,7 b' class localrepository:' | |||||
1010 |
|
1022 | |||
1011 | def fcmp(fn, mf): |
|
1023 | def fcmp(fn, mf): | |
1012 | t1 = self.wfile(fn).read() |
|
1024 | t1 = self.wfile(fn).read() | |
1013 |
t2 = self.file(fn).revision(mf |
|
1025 | t2 = self.file(fn).revision(mf.get(fn, nullid)) | |
1014 | return cmp(t1, t2) |
|
1026 | return cmp(t1, t2) | |
1015 |
|
1027 | |||
1016 | def mfmatches(node): |
|
1028 | def mfmatches(node): | |
@@ -1772,7 +1784,10 b' class localrepository:' | |||||
1772 | self.wfile(f, "w").write(t) |
|
1784 | self.wfile(f, "w").write(t) | |
1773 | util.set_exec(self.wjoin(f), mf2[f]) |
|
1785 | util.set_exec(self.wjoin(f), mf2[f]) | |
1774 | if moddirstate: |
|
1786 | if moddirstate: | |
1775 | self.dirstate.update([f], 'n') |
|
1787 | if mode == 'm': | |
|
1788 | self.dirstate.update([f], 'n', st_mtime=0) | |||
|
1789 | else: | |||
|
1790 | self.dirstate.update([f], 'n') | |||
1776 |
|
1791 | |||
1777 | # merge the tricky bits |
|
1792 | # merge the tricky bits | |
1778 | files = merge.keys() |
|
1793 | files = merge.keys() |
General Comments 0
You need to be logged in to leave comments.
Login now