##// END OF EJS Templates
debugrevlog: fix dumping manifest fails on empty first revision (issue5062)
debugrevlog: fix dumping manifest fails on empty first revision (issue5062)

File last commit:

r14233:659f34b8 default
r28059:740208f6 default
Show More
dumprevlog
25 lines | 676 B | text/plain | TextLexer
#!/usr/bin/env python
# Dump revlogs as raw data stream
# $ find .hg/store/ -name "*.i" | xargs dumprevlog > repo.dump
import sys
from mercurial import revlog, node, util
for fp in (sys.stdin, sys.stdout, sys.stderr):
util.setbinary(fp)
for f in sys.argv[1:]:
binopen = lambda fn: open(fn, 'rb')
r = revlog.revlog(binopen, f)
print "file:", f
for i in r:
n = r.node(i)
p = r.parents(n)
d = r.revision(n)
print "node:", node.hex(n)
print "linkrev:", r.linkrev(i)
print "parents:", node.hex(p[0]), node.hex(p[1])
print "length:", len(d)
print "-start-"
print d
print "-end-"