git logを使ってコミット履歴をcsv出力する
概要
Gitのコミットログから、修正内容などをExcelなどで一覧化したい場合に使うと便利なコマンド。
ソースと注釈
git-bash.exeを利用して、以下の内容をコマンドラインに入力すると、指定した場所にcsvファイルを出力できる。
以下コマンド引数と注釈。
--no-pager
…ログをページャーを利用せずに表示する。--since=2019-11-01
…指定した期間からログを取得する。--until=2019-12-25
…指定した期間までのログを取得する。--pretty=format:
…ログのフォーマットを指定する。%ad
…--date=
オプションに従った形式のAuthorの日付%h
…コミットのハッシュ(短縮版)%an
… Authorの名前%s
…件名%b
…本文
--date=short
…ログに表示する日付の表示フォーマットを指定する。--no-merges
…マージコミットを除く。--date-order
…コミット順で表示する。commits.csv
…指定したファイル名で出力する。
cd C:\\\\workspace\\xxx git --no-pager log --since=2019-11-01--until=2019-12-25 \--pretty=format:"\"%ad\",\"%h\",\"%an\",\"%s\",\"%b\"" \--date=short --no-merges --date-order commits.csv
ちなみに、GitがUTF-8の場合csvをダブルクリックしてExcelで開くと文字化けるので、一旦UTF-8で開けるテキストエディタでShift-JISに変換して保存し、それからExcelで開く必要があるので注意が必要。