# File lib/git/object.rb, line 149 def initialize(base, sha, init = nil) super(base, sha) @tree = nil @parents = nil @author = nil @committer = nil @message = nil if init set_commit(init) end end
# File lib/git/object.rb, line 221 def commit? true end
git author
# File lib/git/object.rb, line 196 def committer check_commit @committer end
# File lib/git/object.rb, line 201 def committer_date committer.date end
# File lib/git/object.rb, line 206 def diff_parent diff(parent) end
# File lib/git/object.rb, line 170 def gtree check_commit Tree.new(@base, @tree) end
# File lib/git/object.rb, line 161 def message check_commit @message end
# File lib/git/object.rb, line 166 def name @base.lib.namerev(sha) end
# File lib/git/object.rb, line 175 def parent parents.first end
array of all parent commits
# File lib/git/object.rb, line 180 def parents check_commit @parents end
# File lib/git/object.rb, line 210 def set_commit(data) if data['sha'] @sha = data['sha'] end @committer = Git::Author.new(data['committer']) @author = Git::Author.new(data['author']) @tree = Git::Object::Tree.new(@base, data['tree']) @parents = data['parent'].map{ |sha| Git::Object::Commit.new(@base, sha) } @message = data['message'].chomp end
see if this object has been initialized and do so if not
# File lib/git/object.rb, line 228 def check_commit unless @tree data = @base.lib.commit_data(@objectish) set_commit(data) end end