Mercurial > public > mercurial-scm > python-hglib
view examples/stats.py @ 169:e6589149b2c8 1.9
client: include stderr message in ServerError on initial communication failure
If _readhello() raises ServerError, the server must be unusable. So we can
terminate it to get status code and error message.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 07 Sep 2015 22:45:47 +0900 |
parents | 031cbb8d4f65 |
children |
line wrap: on
line source
# stats - get stats on the given repo import sys import hglib # figure out what repo path to use repo = '.' if len(sys.argv) > 1: repo = sys.argv[1] # connect to hg client = hglib.open(repo) # gather some stats revs = int(client.tip().rev) files = len(list(client.manifest())) heads = len(client.heads()) branches = len(client.branches()) tags = len(client.tags()) - 1 # don't count tip authors = {} for e in client.log(): authors[e.author] = True merges = 0 for e in client.log(onlymerges=True): merges += 1 print "%d revisions" % revs print "%d merges" % merges print "%d files" % files print "%d heads" % heads print "%d branches" % branches print "%d tags" % tags print "%d authors" % len(authors)