class Repokeeper::RepoProxy

Public Class Methods

new(repo_path) click to toggle source
# File lib/repokeeper/repo_proxy.rb, line 23
def initialize(repo_path)
  @repo = open_repo(repo_path)
end

Public Instance Methods

commits(rev_range = nil) click to toggle source
# File lib/repokeeper/repo_proxy.rb, line 27
def commits(rev_range = nil)
  rev_range ||= RevParser::RevRange.new
  rev_range = check_rev_range(rev_range)
  create_walker(rev_range).to_a
end
local_branches() click to toggle source
# File lib/repokeeper/repo_proxy.rb, line 33
def local_branches
  @repo.branches.each_name(:local).sort
end
remote_branches() click to toggle source
# File lib/repokeeper/repo_proxy.rb, line 37
def remote_branches
  @repo.branches.each_name(:remote).sort
end

Private Instance Methods

check_rev_range(rev_range) click to toggle source
# File lib/repokeeper/repo_proxy.rb, line 43
def check_rev_range(rev_range)
  end_rev = rev_range.end_rev || @repo.head.name
  start_rev = rev_range.start_rev
  RevParser::RevRange.new(end_rev, start_rev)
end
create_walker(rev_range) click to toggle source
# File lib/repokeeper/repo_proxy.rb, line 53
def create_walker(rev_range)
  walker = Rugged::Walker.new(@repo)
  BoundedWalker.new(walker, rev_range)
end
open_repo(repo_path) click to toggle source
# File lib/repokeeper/repo_proxy.rb, line 49
def open_repo(repo_path)
  Rugged::Repository.discover(repo_path)
end