Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/localrepo.py @ 4274:f38f90a177dc
Merge with -stable
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sat, 24 Mar 2007 02:45:08 -0500 |
parents | cd7b36b7869c fe7f38dda34b |
children | cb6107f78b92 |
comparison
equal
deleted
inserted
replaced
4271:94bb953b43e5 | 4274:f38f90a177dc |
---|---|
287 continue | 287 continue |
288 if bin_n not in self.changelog.nodemap: | 288 if bin_n not in self.changelog.nodemap: |
289 warn(_("tag '%s' refers to unknown node") % key) | 289 warn(_("tag '%s' refers to unknown node") % key) |
290 continue | 290 continue |
291 | 291 |
292 h = {} | 292 h = [] |
293 if key in filetags: | 293 if key in filetags: |
294 n, h = filetags[key] | 294 n, h = filetags[key] |
295 h[n] = True | 295 h.append(n) |
296 filetags[key] = (bin_n, h) | 296 filetags[key] = (bin_n, h) |
297 | 297 |
298 for k,nh in filetags.items(): | 298 for k,nh in filetags.items(): |
299 if k not in globaltags: | 299 if k not in globaltags: |
300 globaltags[k] = nh | 300 globaltags[k] = nh |
306 an, ah = nh | 306 an, ah = nh |
307 bn, bh = globaltags[k] | 307 bn, bh = globaltags[k] |
308 if bn != an and an in bh and \ | 308 if bn != an and an in bh and \ |
309 (bn not in ah or len(bh) > len(ah)): | 309 (bn not in ah or len(bh) > len(ah)): |
310 an = bn | 310 an = bn |
311 ah.update(bh) | 311 ah.append([n for n in bh if n not in ah]) |
312 globaltags[k] = an, ah | 312 globaltags[k] = an, ah |
313 | 313 |
314 # read the tags file from each head, ending with the tip | 314 # read the tags file from each head, ending with the tip |
315 f = None | 315 f = None |
316 for rev, node, fnode in self._hgtagsnodes(): | 316 for rev, node, fnode in self._hgtagsnodes(): |