ingress.git_repo

class bigbang.ingress.git_repo.GitRepo(name, url=None, attribs=['HEXSHA', 'Committer Name', 'Committer Email', 'Commit Message', 'Time', 'Parent Commit', 'Touched File'], cache=None)

Bases: object

Store a git repository given the address to that repo relative to this file.

It returns the data in many forms.

Index a Pandas DataFrame object by time.

That stores the raw form of the repo’s commit data as a table.

Each row in this table is a commit.

And each column represents an attribute of that commit: (eg.: time, message, commiter name, committer email, commit hexsha).

by_committer()

Return commit data grouped by commiter.

property commit_data

Return commit data.

commits_for_committer(committer_name)

Return commits for committer given the commiter name.

commits_per_day()

Return commits grouped by day.

commits_per_day_full()

Return commits grouped by day and by commiter.

commits_per_week()

Return commits grouped by week.

gen_data(repo, raw)

Generate data to repo.

merge_with_repo(other)

Append commit to a repo.

populate_data(attribs=['HEXSHA', 'Committer Name', 'Committer Email', 'Commit Message', 'Time', 'Parent Commit', 'Touched File'])

Populate data.

class bigbang.ingress.git_repo.MultiGitRepo(repos, attribs=['HEXSHA', 'Committer Name', 'Committer Email', 'Commit Message', 'Time', 'Parent Commit', 'Touched File'])

Bases: bigbang.ingress.git_repo.GitRepo

Repos must have a “Repo Name” column.

Index a Pandas DataFrame object by time.

That stores the raw form of the repo’s commit data as a table.

Each row in this table is a commit.

And each column represents an attribute of that commit: (eg.: time, message, commiter name, committer email, commit hexsha).

bigbang.ingress.git_repo.cache_fixer(r)

Adds info from row to graph.