mirror of https://github.com/tomgi/git_stats.git
28 lines
572 B
Ruby
28 lines
572 B
Ruby
require 'git_stats/hash_initializable'
|
|
|
|
module GitStats
|
|
module GitData
|
|
class Author
|
|
include HashInitializable
|
|
|
|
attr_reader :repo, :name, :email
|
|
|
|
def add_commit(commit)
|
|
commits << commit
|
|
activity.add_commit(commit)
|
|
end
|
|
|
|
def commits
|
|
@commits ||= repo.commits.select { |hash, commit| commit.author == self }
|
|
end
|
|
|
|
def activity
|
|
@activity ||= commits.values.inject(Activity.new) do |activity, commit|
|
|
activity.add_commit(commit)
|
|
activity
|
|
end
|
|
end
|
|
|
|
end
|
|
end
|
|
end |