mercurial/commands.py
changeset 14326 6078a99af433
parent 14323 a79fea6b3e77
child 14331 3b9a896af09c
equal deleted inserted replaced
14325:f9e91a400c16 14326:6078a99af433
  1849         else:
  1849         else:
  1850             ui.write(_("%s not renamed\n") % rel)
  1850             ui.write(_("%s not renamed\n") % rel)
  1851 
  1851 
  1852 @command('debugrevlog',
  1852 @command('debugrevlog',
  1853     [('c', 'changelog', False, _('open changelog')),
  1853     [('c', 'changelog', False, _('open changelog')),
  1854      ('m', 'manifest', False, _('open manifest'))],
  1854      ('m', 'manifest', False, _('open manifest')),
       
  1855      ('d', 'dump', False, _('dump index data'))],
  1855      _('-c|-m|FILE'))
  1856      _('-c|-m|FILE'))
  1856 def debugrevlog(ui, repo, file_ = None, **opts):
  1857 def debugrevlog(ui, repo, file_ = None, **opts):
  1857     """show data and statistics about a revlog"""
  1858     """show data and statistics about a revlog"""
  1858     r = cmdutil.openrevlog(repo, 'debugrevlog', file_, opts)
  1859     r = cmdutil.openrevlog(repo, 'debugrevlog', file_, opts)
       
  1860 
       
  1861     if opts.get("dump"):
       
  1862         numrevs = len(r)
       
  1863         ui.write("# rev p1rev p2rev start end deltastart base p1 p2"
       
  1864                  " rawsize totalsize compression heads\n")
       
  1865         ts = 0
       
  1866         heads = set()
       
  1867         for rev in xrange(numrevs):
       
  1868             dbase = r.base(rev)
       
  1869             cbase = r.chainbase(rev)
       
  1870             p1, p2 = r.parentrevs(rev)
       
  1871             rs = r.rawsize(rev)
       
  1872             ts = ts + rs
       
  1873             heads -= set(r.parentrevs(rev))
       
  1874             heads.add(rev)
       
  1875             ui.write("%d %d %d %d %d %d %d %d %d %d %d %d %d\n" %
       
  1876                      (rev, p1, p2, r.start(rev), r.end(rev),
       
  1877                       r.start(dbase), r.start(cbase),
       
  1878                       r.start(p1), r.start(p2),
       
  1879                       rs, ts, ts / r.end(rev), len(heads)))
       
  1880         return 0
       
  1881 
  1859     v = r.version
  1882     v = r.version
  1860     format = v & 0xFFFF
  1883     format = v & 0xFFFF
  1861     flags = []
  1884     flags = []
  1862     gdelta = False
  1885     gdelta = False
  1863     if v & revlog.REVLOGNGINLINEDATA:
  1886     if v & revlog.REVLOGNGINLINEDATA: