概要
ちょっと探したら、そういうことの出来る、素敵なWebサービスもありそうではあるのですが。
- 開発者じゃない人に「今月の開発内容」のようなものを共有したい。
- 開発メンバーごとに、どのくらい作業をしているかの目安を出したい。
- 毎月、開発した内容を振り返るのに使える資料を簡単に作りたい。
ということで。
何となくGitのコミットログをCSV出力して、Google SpreadSheetとかExcelとかに貼り付けることを考えました。
やり方
コンソールでGitレポジトリのディレクトリを開き
git --no-pager log --since=2017-03-01 --until=2017-03-31 \
--pretty=format:"\"%ad\",\"%h\",\"%an\",\"%s\"" \
--date=short --no-merges --all --date-order > commits.txt
を実行。
(「2017-03-01」と「2017-03-31」の部分は、お好みの期間に書き換えてください)
これで、同ディレクトリに「commits.txt」というファイルが出力されます。
出力内容は
"日付","コミットのハッシュ","ユーザー名","コメント"
となります。
コマンドの中にある
--pretty=format:"\"%ad\",\"%h\",\"%an\",\"%s\""
の部分を変更することで、出力フォーマットは変更することができます。
コマンドの説明
- --no-pager → ページャーを使わない
- log → コミットログを表示
- --since=2017-03-01 → 2017年3月1日から
- --until=2017-03-31 → 2017年3月31日まで
- --pretty=format:""%ad","%h","%an","%s"" → 出力フォーマット指定
- --date=short → 日付を「yyyy-mm-dd」の形式で表示
- --no-merges → 親のあるコミットを省略
- --all → 全てのブランチやリモートのコミットを表示
- --date-order → 時間順にソート
参考