class RepoMiner::Repository
Attributes
branch[R]
repo_path[R]
Public Class Methods
new(repo_path)
click to toggle source
# File lib/repo_miner/repository.rb, line 6 def initialize(repo_path) @repo_path = repo_path end
Public Instance Methods
analyse(branch = 'master', since = nil)
click to toggle source
# File lib/repo_miner/repository.rb, line 22 def analyse(branch = 'master', since = nil) walk(branch, since).map do |commit| Commit.new(self, commit).analyse end end
rugged_repository()
click to toggle source
# File lib/repo_miner/repository.rb, line 10 def rugged_repository @repository ||= Rugged::Repository.new(repo_path) end
walk(branch, since = nil)
click to toggle source
# File lib/repo_miner/repository.rb, line 14 def walk(branch, since = nil) @walker = Rugged::Walker.new(rugged_repository) @walker.sorting(Rugged::SORT_TOPO | Rugged::SORT_REVERSE) @walker.hide(rugged_repository.lookup(since)) if since @walker.push(rugged_repository.branches[branch].target_id) @walker end