Sha256: 67e9de3f0954b6e6f696217558ac3f495f0805afadb82d3937dbd92169ed70ec
Contents?: true
Size: 927 Bytes
Versions: 1
Compression:
Stored size: 927 Bytes
Contents
require 'thor' require 'colorize' require 'active_support/all' module WeeklyCommits class CLI < Thor package_name 'Weekly Commits' default_task :weekly_commits desc 'weekly_commits', 'Lists commits for a specified week' method_option :week, { type: :numeric, desc: 'Relative week number. e.g. -w=1 for last week. 0 = current week.', aliases: '-w', default: 0 } def weekly_commits relative_week = options[:week] beg_week = relative_week.week.ago.beginning_of_week 5.times do |day_count| date = beg_week + day_count.days week_title = date.strftime('%a, %e %b %Y') git_date_format = date.strftime('%Y-%m-%e') commits = `git --no-pager log --after='#{git_date_format} 00:00' --before='#{git_date_format} 23:59' --pretty=format:'%s'` puts week_title.yellow puts commits puts end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
weekly_commits-1.0.0 | lib/weekly_commits/cli.rb |