2012-03-15 16 views
3

私はコミットIDのリストを持っているファイルを持っており、私は各コ​​ミットの行数を計算するスクリプトを書こうとしています。これを行う最も簡単な方法は何ですか?私は既にいくつかのpythonの行を書いていますが、実際にはどの言語にも対応できます。 git showgit log、又はgit diff-treeの引数として(変更の合計)SLOCのgitコミット

答えて

1

(ファイルごとの変更のために)使用--numstat又は--shortstat。 bashで例えば

、:様々なdiffstatフラグがコミット調べほぼすべてのgitコマンドに渡すことができますが、彼らは唯一のgit-diff-treeのmanページに記載されていることを

while read sha; do 
    git diff-tree --shortstat $sha $sha^ 
done 

注意。

+0

コミット間の行を教えてもらえませんか?コミットが追加された行数が必要です。コミットをパッチとしてダウンロードする場合と同様に、そのパッチに何行追加しますか? –

+0

これは、diffstatの意味です。挿入数と削除数。 –

+0

ありがとう、私は1つだけのシャーを提供するときに素晴らしい作品。これにはまだ後処理が必要ですが、私はそれを期待していました。 –