Mercurial > hg > mercurial-crew-with-dirclash
comparison hgext/convert/__init__.py @ 5373:6aba1835a7b3
convert: pass the order of the revmapfile to the converter_source
The entries in this file are supposed to be topologically sorted and
this may be useful for a converter_source.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Thu, 04 Oct 2007 23:21:37 -0300 |
parents | 6b6104430964 |
children | e710874247d1 |
comparison
equal
deleted
inserted
replaced
5372:6f6aa7f3bc1c | 5373:6aba1835a7b3 |
---|---|
51 self.revmapfilefd = None | 51 self.revmapfilefd = None |
52 self.authors = {} | 52 self.authors = {} |
53 self.authorfile = None | 53 self.authorfile = None |
54 self.mapfile = filemapper | 54 self.mapfile = filemapper |
55 | 55 |
56 self.maporder = [] | |
56 self.map = {} | 57 self.map = {} |
57 try: | 58 try: |
58 origrevmapfile = open(self.revmapfile, 'r') | 59 origrevmapfile = open(self.revmapfile, 'r') |
59 for l in origrevmapfile: | 60 for l in origrevmapfile: |
60 sv, dv = l[:-1].split() | 61 sv, dv = l[:-1].split() |
62 if sv not in self.map: | |
63 self.maporder.append(sv) | |
61 self.map[sv] = dv | 64 self.map[sv] = dv |
62 origrevmapfile.close() | 65 origrevmapfile.close() |
63 except IOError: | 66 except IOError: |
64 pass | 67 pass |
65 | 68 |
236 | 239 |
237 def convert(self): | 240 def convert(self): |
238 try: | 241 try: |
239 self.source.before() | 242 self.source.before() |
240 self.dest.before() | 243 self.dest.before() |
241 self.source.setrevmap(self.map) | 244 self.source.setrevmap(self.map, self.maporder) |
242 self.ui.status("scanning source...\n") | 245 self.ui.status("scanning source...\n") |
243 heads = self.source.getheads() | 246 heads = self.source.getheads() |
244 parents = self.walktree(heads) | 247 parents = self.walktree(heads) |
245 self.ui.status("sorting...\n") | 248 self.ui.status("sorting...\n") |
246 t = self.toposort(parents) | 249 t = self.toposort(parents) |