2016-04-25 4 views
1

をライン寄付についてGitの統計情報を取得する私は、統計が指定されたディレクトリ内でどのように多くの行に貢献してきた著者私に言って見たいと思います。特定のディレクトリ内

git-extrasなどがありますが、統計情報を特定のディレクトリに制限するために使用できるかどうかはわかりません。

アイデア?

答えて

2

あなたは短いスクリプトを使用することができます。

#!/bin/bash 

git shortlog -s -- $1 | cut -c8- | while read i 
do 
    git log --author="$i" --pretty=tformat: --numstat -- $1 \ 
    | awk -v name="$i" '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "%s: added lines: %s removed lines: %s total lines: %s\n", name, add, subs, loc }' 
done 

を実行し loc.shそれを呼び出すと:loc.sh [ディレクトリ/ファイル]

出力はこのようなものになるだろう。

名1:追加された行:10757の除去ライン49個の総行:10708
Nmae2:追加された行:1193 remov EDライン:94255総行:-93062

がよりherehere

+0

を参照してください、これはリポジトリ内の単一のディレクトリに出力を制限しない、または統計情報は、リポジトリ全体に関係するのだろうか?そうでなければ、それを作れますか?それは質問の鍵の一つです。それがあれば、それはどの部分ですか? – davidtheclark

+0

はい、あります。スクリプトloc.shを実行するとcmdlineの引数としてファイル/ディレクトリを指定します。 –

+1

が確認 - (「$ 1」、これは必要なファイル/ディレクトリ上のgitコマンドフィルタを作るあなたはスクリプト自体に見ることができます)!ありがとう---私はあなたがそれをよりよく理解できるように、あなたがbashを使っている方法を研究しなければならないでしょう。 – davidtheclark

関連する問題