#目的
会社での業績評価や対外的なアピールのために、自分の書いたコード行数を説明しないといけないときがあります。
そのときにgitを使用している環境での自動計算コマンドを紹介します。
#方法
- .gitのあるフォルダに移動する
- gitのコミット位置は最新のものにしておく
- 以下のコマンドを実行する
git log --numstat --pretty="%H" --author='あなたの名前' --since=YYYY-MM-DD --until=YYYY-MM-DD --no-merges | awk 'NF==3 {plus+=$1; minus+=$2} END {printf("%d (+%d, -%d)\n", plus+minus, plus, minus)}'
(--authorは対象のユーザ名、--sinceと--untilには集計期間を指定してください。)
例:2015年10月1日から2016年3月31日までのコミット行数
git log --numstat --pretty="%H" --author='Night___' --since=2015-10-01 --until=2016-03-31 --no-merges | awk 'NF==3 {plus+=$1; minus+=$2} END {printf("%d (+%d, -%d)\n", plus+minus, plus, minus)}'
#結果
1234 (+612 -623) のように左から、
合計行数(+追加行数 -削除行数) が表示されます。
#注意
- マージのコミットの行数は含みません(--no-mergesのオプションで除外しています。)
- パイプ(|)以下のコマンドが算出と出力のための処理です。パイプ以下のコマンドを削ると内容が確認できます。
#参考
コミット行数でなく、リポジトリ内でどれだけ自分が書いた行数があるかを知りたいときは以下を参照してください。
「そのgitリポジトリで自分の書いたコードの行数を数える。」