Class | Grit::GitRuby::Commit |
In: |
lib/grit/git-ruby/git_object.rb
lib/grit/git-ruby/object.rb |
Parent: | GitObject |
author | [RW] | |
author | [RW] | |
committer | [RW] | |
committer | [RW] | |
headers | [RW] | |
headers | [RW] | |
message | [RW] | |
message | [RW] | |
parent | [RW] | |
parent | [RW] | |
tree | [RW] | |
tree | [RW] |
# File lib/grit/git-ruby/git_object.rb, line 236 def self.from_raw(rawobject, repository=nil) parent = [] tree = author = committer = nil headers, message = rawobject.content.split(/\n\n/, 2) all_headers = headers.split(/\n/).map { |header| header.split(/ /, 2) } all_headers.each do |key, value| case key when "tree" tree = value when "parent" parent.push(value) when "author" author = UserInfo.new(value) when "committer" committer = UserInfo.new(value) else warn "unknown header '%s' in commit %s" % \ [key, rawobject.sha1.unpack("H*")[0]] end end if not tree && author && committer raise RuntimeError, "incomplete raw commit object" end new(tree, parent, author, committer, message, headers, repository) end
# File lib/grit/git-ruby/object.rb, line 220 def self.from_raw(rawobject, repository=nil) parent = [] tree = author = committer = nil headers, message = rawobject.content.split(/\n\n/, 2) all_headers = headers.split(/\n/).map { |header| header.split(/ /, 2) } all_headers.each do |key, value| case key when "tree" tree = value when "parent" parent.push(value) when "author" author = UserInfo.new(value) when "committer" committer = UserInfo.new(value) else warn "unknown header '%s' in commit %s" % \ [key, rawobject.sha1.unpack("H*")[0]] end end if not tree && author && committer raise RuntimeError, "incomplete raw commit object" end new(tree, parent, author, committer, message, headers, repository) end
# File lib/grit/git-ruby/object.rb, line 247 def initialize(tree, parent, author, committer, message, headers, repository=nil) @tree = tree @author = author @parent = parent @committer = committer @message = message @headers = headers @repository = repository end
# File lib/grit/git-ruby/git_object.rb, line 263 def initialize(tree, parent, author, committer, message, headers, repository=nil) @tree = tree @author = author @parent = parent @committer = committer @message = message @headers = headers @repository = repository end
# File lib/grit/git-ruby/git_object.rb, line 277 def raw_content "tree %s\n%sauthor %s\ncommitter %s\n\n" % [ @tree, @parent.collect { |i| "parent %s\n" % i }.join, @author, @committer] + @message end
# File lib/grit/git-ruby/object.rb, line 261 def raw_content "tree %s\n%sauthor %s\ncommitter %s\n\n" % [ @tree, @parent.collect { |i| "parent %s\n" % i }.join, @author, @committer] + @message end
# File lib/grit/git-ruby/git_object.rb, line 284 def raw_log(sha) output = "commit #{sha}\n" output += @headers + "\n\n" output += @message.split("\n").map { |l| ' ' + l }.join("\n") + "\n\n" end