Sha256: e27fd2bf96c41f3d539b75204df7ddba4a8ea469b22d98c801a6034c35e46014
Contents?: true
Size: 1.2 KB
Versions: 67
Compression:
Stored size: 1.2 KB
Contents
require 'bundler/gem_tasks' require 'rake/testtask' desc 'Default: run unit tests.' task :default => [:test] # Unit tests Rake::TestTask.new do |t| t.libs << "test" t.libs << "test-base" t.pattern = 'test/**/*_test.rb' t.verbose = true t.warning = false end desc "Create a ChangeLog" # simple rake task to output a changelog between two commits, tags ... # output is formatted simply, commits are grouped under each author name desc "generate changelog with nice clean output" task :changelog, :since_c, :until_c do |t,args| since_c = args[:since_c] || `git tag | head -1`.chomp until_c = args[:until_c] cmd=`git log --pretty='format:%ci::%an <%ae>::%s::%H' #{since_c}..#{until_c}` entries = Hash.new changelog_content = String.new cmd.split("\n").each do |entry| date, author, subject, hash = entry.chomp.split("::") entries[author] = Array.new unless entries[author] day = date.split(" ").first entries[author] << "#{subject} (#{hash})" unless subject =~ /Merge/ end # generate clean output entries.keys.each do |author| changelog_content += author + "\n" entries[author].reverse.each { |entry| changelog_content += " * #{entry}\n" } end puts changelog_content end
Version data entries
67 entries across 60 versions & 3 rubygems