mercurial/commands.py
changeset 3467 df7202f6887c
parent 3466 be2bf7263276
child 3502 8dc14d630b29
equal deleted inserted replaced
3466:be2bf7263276 3467:df7202f6887c
   217     # is descending and the prune args are all within that range
   217     # is descending and the prune args are all within that range
   218     for rev in opts.get('prune', ()):
   218     for rev in opts.get('prune', ()):
   219         rev = repo.changelog.rev(repo.lookup(rev))
   219         rev = repo.changelog.rev(repo.lookup(rev))
   220         ff = followfilter()
   220         ff = followfilter()
   221         stop = min(revs[0], revs[-1])
   221         stop = min(revs[0], revs[-1])
   222         for x in range(rev, stop-1, -1):
   222         for x in xrange(rev, stop-1, -1):
   223             if ff.match(x) and wanted.has_key(x):
   223             if ff.match(x) and wanted.has_key(x):
   224                 del wanted[x]
   224                 del wanted[x]
   225 
   225 
   226     def iterate():
   226     def iterate():
   227         if follow and not files:
   227         if follow and not files:
  1243 def debugindex(ui, file_):
  1243 def debugindex(ui, file_):
  1244     """dump the contents of an index file"""
  1244     """dump the contents of an index file"""
  1245     r = revlog.revlog(util.opener(os.getcwd(), audit=False), file_, "", 0)
  1245     r = revlog.revlog(util.opener(os.getcwd(), audit=False), file_, "", 0)
  1246     ui.write("   rev    offset  length   base linkrev" +
  1246     ui.write("   rev    offset  length   base linkrev" +
  1247              " nodeid       p1           p2\n")
  1247              " nodeid       p1           p2\n")
  1248     for i in range(r.count()):
  1248     for i in xrange(r.count()):
  1249         node = r.node(i)
  1249         node = r.node(i)
  1250         pp = r.parents(node)
  1250         pp = r.parents(node)
  1251         ui.write("% 6d % 9d % 7d % 6d % 7d %s %s %s\n" % (
  1251         ui.write("% 6d % 9d % 7d % 6d % 7d %s %s %s\n" % (
  1252                 i, r.start(i), r.length(i), r.base(i), r.linkrev(node),
  1252                 i, r.start(i), r.length(i), r.base(i), r.linkrev(node),
  1253             short(node), short(pp[0]), short(pp[1])))
  1253             short(node), short(pp[0]), short(pp[1])))
  1254 
  1254 
  1255 def debugindexdot(ui, file_):
  1255 def debugindexdot(ui, file_):
  1256     """dump an index DAG as a .dot file"""
  1256     """dump an index DAG as a .dot file"""
  1257     r = revlog.revlog(util.opener(os.getcwd(), audit=False), file_, "", 0)
  1257     r = revlog.revlog(util.opener(os.getcwd(), audit=False), file_, "", 0)
  1258     ui.write("digraph G {\n")
  1258     ui.write("digraph G {\n")
  1259     for i in range(r.count()):
  1259     for i in xrange(r.count()):
  1260         node = r.node(i)
  1260         node = r.node(i)
  1261         pp = r.parents(node)
  1261         pp = r.parents(node)
  1262         ui.write("\t%d -> %d\n" % (r.rev(pp[0]), i))
  1262         ui.write("\t%d -> %d\n" % (r.rev(pp[0]), i))
  1263         if pp[1] != nullid:
  1263         if pp[1] != nullid:
  1264             ui.write("\t%d -> %d\n" % (r.rev(pp[1]), i))
  1264             ui.write("\t%d -> %d\n" % (r.rev(pp[1]), i))
  1441 
  1441 
  1442     def difflinestates(a, b):
  1442     def difflinestates(a, b):
  1443         sm = difflib.SequenceMatcher(None, a, b)
  1443         sm = difflib.SequenceMatcher(None, a, b)
  1444         for tag, alo, ahi, blo, bhi in sm.get_opcodes():
  1444         for tag, alo, ahi, blo, bhi in sm.get_opcodes():
  1445             if tag == 'insert':
  1445             if tag == 'insert':
  1446                 for i in range(blo, bhi):
  1446                 for i in xrange(blo, bhi):
  1447                     yield ('+', b[i])
  1447                     yield ('+', b[i])
  1448             elif tag == 'delete':
  1448             elif tag == 'delete':
  1449                 for i in range(alo, ahi):
  1449                 for i in xrange(alo, ahi):
  1450                     yield ('-', a[i])
  1450                     yield ('-', a[i])
  1451             elif tag == 'replace':
  1451             elif tag == 'replace':
  1452                 for i in range(alo, ahi):
  1452                 for i in xrange(alo, ahi):
  1453                     yield ('-', a[i])
  1453                     yield ('-', a[i])
  1454                 for i in range(blo, bhi):
  1454                 for i in xrange(blo, bhi):
  1455                     yield ('+', b[i])
  1455                     yield ('+', b[i])
  1456 
  1456 
  1457     prev = {}
  1457     prev = {}
  1458     ucache = {}
  1458     ucache = {}
  1459     def display(fn, rev, states, prevstates):
  1459     def display(fn, rev, states, prevstates):