Skip to content

Commit

Permalink
Merge pull request #31 from jhx/issue_30_add_changelog_rake_task
Browse files Browse the repository at this point in the history
Fix #30 Add changelog rake task
  • Loading branch information
jhx committed Oct 31, 2014
2 parents bae9980 + fab0eca commit d60daa1
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,26 @@ task :rubocop do
# task.fail_on_error = true
end
end # task

#------------------------------------------------------------------- changelog
# TODO: improve the following:
# - remove bump version commits
# - prepend to CHANGELOG without using changelog.tmp
desc 'Updates changelog with commit messages'
task :changelog, [:tag1, :tag2] do |t, args|
args.with_defaults(:tag1 => 'v0.1.0', :tag2 => 'HEAD')
date = `git log -1 --format=%ad #{args[:tag2]} --date=short`
title = %(#{args[:tag2].gsub(/^v/, '')} / #{date}).chomp
underline = '-' * title.size
url = 'https://github.com/jhx'
format = %(- "'`'"TYPE"'`'" - %s | [view](#{url}/$basename/commit/%h))
file = 'changelog.tmp'
sh <<-EOF
remote=$(git config --get branch.master.remote)
url=$(git config --get remote.$remote.url)
basename=$(basename "$url" .git)
echo "#{title}\n#{underline}\n" > #{file}
git log #{args[:tag1]}..#{args[:tag2]} --no-merges \
--pretty=format:"#{format}" >> #{file}
EOF
end # task

0 comments on commit d60daa1

Please sign in to comment.