From 33ebe7acec14b25c5f84f35a664803fcab2f7781 Mon Sep 17 00:00:00 2001 From: Michael Trier Date: Wed, 7 May 2008 16:49:48 -0400 Subject: initial project --- lib/git_python/stats.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 lib/git_python/stats.py (limited to 'lib/git_python/stats.py') diff --git a/lib/git_python/stats.py b/lib/git_python/stats.py new file mode 100644 index 00000000..f1e10348 --- /dev/null +++ b/lib/git_python/stats.py @@ -0,0 +1,17 @@ +class Stats(object): + def __init__(self, repo, total, files): + self.repo = repo + self.total = total + self.files = files + + @classmethod + def list_from_string(cls, repo, text): + hsh = {'total': {'insertions': 0, 'deletions': 0, 'lines': 0, 'files': 0}, 'files': {}} + for line in text.splitlines(): + (insertions, deletions, filename) = line.split("\t") + hsh['total']['insertions'] += int(insertions) + hsh['total']['deletions'] += int(deletions) + hsh['total']['lines'] = (hsh['total']['deletions'] + hsh['total']['insertions']) + hsh['total']['files'] += 1 + hsh['files'][filename.strip()] = {'insertions': int(insertions), 'deletions': int(deletions)} + return Stats(repo, hsh['total'], hsh['files']) \ No newline at end of file -- cgit v1.2.1