業務時間外コミットの一覧を出すrubyのscript

CEOの方が基本18時に退社するように心掛けています、というようなことを仰っている会社にお話を聞きに行くことがありました。
そちらではGithubにその企業用のリポジトリが公開されており、検証用のコードと思われるものがいくつか存在したので、見てみたところ
 
 
あれ、おかしいな、夜中12時越えのcommitが沢山あるぞ。。。
 
ということで業務時間外のコミット一覧を出すscriptを書いてみました。
github.com

実行例

業務時間外のコミットの一覧と月の集計(何回)を出すスクリプトです。
some_dir を任意の場所に指定ください。複数リポジトリにも対応しています。

$ bundle exec ruby lib/overwork_checker.rb some_dir
2012-08-05 | 2012-08-06 03:29:02 +0900 | some_dir | fixed typo
2013-04-01 | 2013-04-01 23:53:20 +0900 | some_dir | bump up 0.0.7
2013-04-02 | 2013-04-03 00:59:30 +0900 | some_dir | refactor
2013-04-23 | 2013-04-24 01:29:39 +0900 | some_dir | change markdown style for gemnasium.com link
2013-04-24 | 2013-04-24 23:05:06 +0900 | some_dir | add code climate badge

{"2012-08"=>1,
 "2013-04"=>4}

以下の時間でのコミットを対象にするようにしていますので、ご自身の環境に書き換えてお使いください。

def office_hour?(hour)
  hour >= 6 && hour <= 18
end

余談

まぁ、真面目なエンジニアほど個人の勉強のためだったり、今抱えているプロジェクトのためだったりでprivateな時間削って色々やってしまうとは思います。ある程度は仕方ないとは思うのですが、会社のリポジトリへのコミットだと、それ仕事でしょ、という気がします。だったら休日出勤・残業という形で給与に反映いただける方がまだ健全ですね。
色々難しいなぁ。