diff options
author | Sebastian Thiel <byronimo@gmail.com> | 2009-10-08 23:50:51 +0200 |
---|---|---|
committer | Sebastian Thiel <byronimo@gmail.com> | 2009-10-08 23:50:51 +0200 |
commit | b0e84a3401c84507dc017d6e4f57a9dfdb31de53 (patch) | |
tree | 59ad57c3bb4460ed824a144ddc4f84e4b20675dc /lib/git/stats.py | |
parent | 6da04adff0b96c5163b0c2530028b72be2fd26fd (diff) | |
parent | 07eaa4ce2696a88ec0db6e91f191af1e48226aca (diff) | |
download | gitpython-b0e84a3401c84507dc017d6e4f57a9dfdb31de53.tar.gz |
Merge branch 'doc_enhancements' into fixes
Diffstat (limited to 'lib/git/stats.py')
-rw-r--r-- | lib/git/stats.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/git/stats.py b/lib/git/stats.py index 74a23126..307e2f2f 100644 --- a/lib/git/stats.py +++ b/lib/git/stats.py @@ -5,6 +5,32 @@ # the BSD License: http://www.opensource.org/licenses/bsd-license.php class Stats(object): + """ + Represents stat information as presented by git at the end of a merge. It is + created from the output of a diff operation. + + ``Example``:: + + c = Commit( sha1 ) + s = c.stats + s.total # full-stat-dict + s.files # dict( filepath : stat-dict ) + + ``stat-dict`` + + A dictionary with the following keys and values:: + + deletions = number of deleted lines as int + insertions = number of inserted lines as int + lines = total number of lines changed as int, or deletions + insertions + + ``full-stat-dict`` + + In addition to the items in the stat-dict, it features additional information:: + + files = number of changed files as int + + """ def __init__(self, repo, total, files): self.repo = repo self.total = total @@ -12,6 +38,12 @@ class Stats(object): @classmethod def list_from_string(cls, repo, text): + """ + Create a Stat object from output retrieved by git-diff. + + Returns + git.Stat + """ hsh = {'total': {'insertions': 0, 'deletions': 0, 'lines': 0, 'files': 0}, 'files': {}} for line in text.splitlines(): (raw_insertions, raw_deletions, filename) = line.split("\t") |