class MinaRevisioneer::GroupedChangeLog
Uses the markers inside the commit message to generate change groups
can be configured by setting
:revisioneer_markers
must be a hash of GroupName => Marker
Public Instance Methods
messages()
click to toggle source
# File lib/mina_revisioneer/grouped_change_log.rb, line 8 def messages groups = Hash.new walker = Rugged::Walker.new(repo) walker.push sha walker.hide last_deploy_sha if last_deploy_sha walker.each do |commit| revisioneer_markers.each do |marker, pattern| commit.message.lines.each do |line| if line =~ pattern (groups[marker] ||= []) << line.strip end end end end messages = [] groups.each do |key, ms| messages << "#{key}:\n#{ms.join("\n")}" end messages end
revisioneer_markers()
click to toggle source
# File lib/mina_revisioneer/grouped_change_log.rb, line 31 def revisioneer_markers eval "revisioneer_markers", binding end