私はフォーラムを調べましたが、うまくいきませんでした。
要件:
GIT LOG(フォーマット)コマンドを実行し、結果をExcelファイルに書き込みます。
GIT Logコマンドを使用してデータをCSVに書き込むことができる例を見てきましたが、フォーマットは2倍の労力です。
任意のユーティリティまたはアプローチが役立ちます。
ありがとうミリンド
Gitでは、pretty
オプションを使用してログ出力をフォーマットする方法を制御できます。これをチェックしてください:
git log --pretty=format:%h,%an,%ae,%s
これは、(ハッシュ[省略形]、著者名、著者の電子メール、件名)の形式でログを出力します。
形式オプションの完全なリストを表示するには:
git help log
そして、フォーマットオプションのリストが表示されるまで下にスクロールします。
出力をリダイレクトするには、次のように>
リダイレクト演算子を使用します。
git log --pretty=format:%h,%an,%ae,%s > /path/to/file.csv
誰かが探している場合の私の2セント:
echo "commit id,author,date,comment,changed files,lines added,lines deleted" > res.csv
git log --since='last year' --date=local --all --pretty="%x40%h%x2C%an%x2C%ad%x2C%x22%s%x22%x2C" --shortstat | tr "\n" " " | tr "@" "\n" >> res.csv
sed -i 's/ files changed//g' res.csv
sed -i 's/ file changed//g' res.csv
sed -i 's/ insertions(+)//g' res.csv
sed -i 's/ insertion(+)//g' res.csv
sed -i 's/ deletions(-)//g' res.csv
sed -i 's/ deletion(-)//g' res.csv
git-logs-into-csv.sh
ファイルに保存するか、コンソールにコピーして貼り付けます。
私はそれは比較的自明だと思いますが念のため:
--all
はすべてのブランチからログを取得します--since
は、確認するコミットの数を制限します--shortstat
-コミットで何が行われたかを理解する