class SimpleGit::Repository
Attributes
ptr[RW]
Public Class Methods
new(path)
click to toggle source
# File lib/simple_git/repository.rb, line 5 def initialize(path) wrapper = RepositoryWrapper.new ret = Git2.git_repository_open(wrapper, path) if ret != 0 error = Git2::GitError.new(Git2.giterr_last) raise ArgumentError, error[:message].read_string end @ptr = wrapper[:repo] ObjectSpace.define_finalizer(self, self.class.finalize(@ptr)) end
Private Class Methods
finalize(ptr)
click to toggle source
# File lib/simple_git/repository.rb, line 35 def self.finalize(ptr) proc { Git2.git_repository_free(ptr) } end
Public Instance Methods
head()
click to toggle source
# File lib/simple_git/repository.rb, line 29 def head Reference.new.from_head(self) end
revparse(refspec)
click to toggle source
# File lib/simple_git/repository.rb, line 18 def revparse(refspec) wrapper = SimpleGit::Object::ObjectWrapper.new ret = Git2.git_revparse_single(wrapper, @ptr, refspec) if ret != 0 error = Git2::GitError.new(Git2.giterr_last) raise ArgumentError, error[:message].read_string end Object.new.from_wrapper(wrapper) end