Git リポジトリで特定の作成者によって変更された行の合計をカウントするにはどうすればよいでしょうか? 質問する

Git リポジトリで特定の作成者によって変更された行の合計をカウントするにはどうすればよいでしょうか? 質問する

Git リポジトリ内の特定の作成者によって変更された行をカウントするコマンドはありますか? Github が Impact グラフでこれを行っているように、コミットの数をカウントする方法が必ずあることはわかっています。

ベストアンサー1

これにより、著者に関するいくつかの統計が提供されます。必要に応じて変更してください。

使用方法Gawk:

git log --author="_Your_Name_Here_" --pretty=tformat: --numstat \
| gawk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s removed lines: %s total lines: %s\n", add, subs, loc }' -

AwkMac OSXでの使用:

git log --author="_Your_Name_Here_" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -

count-linesgit-alias の使用:

次のように、エイリアスを作成しますcount-lines(システムごとに 1 回)。

git config --global alias.count-lines "! git log --author=\"\$1\" --pretty=tformat: --numstat | awk '{ add += \$1; subs += \$2; loc += \$1 - \$2 } END { printf \"added lines: %s, removed lines: %s, total lines: %s\n\", add, subs, loc }' #"

そして、後で毎回次のように使用します。

git count-lines [email protected]

Windowsの場合、 PATH(環境変数)に Git-Bash を追加した後に動作します。 Linux
の場合、の部分を に置き換えてください。MacOSの場合、変更なしで動作します。awkgawk

既存のスクリプトの使用(2017 年更新)

github に、見た目が洗練されていて、依存関係として bash を使用する新しいパッケージがあります (Linux でテスト済み)。スクリプトよりも直接使用するのに適しています。

そのgit-quick-stats (github リンク)

git-quick-statsフォルダーにコピーし、そのフォルダーをパスに追加します。

mkdir ~/source
cd ~/source
git clone [email protected]:arzzen/git-quick-stats.git
mkdir ~/bin
ln -s ~/source/git-quick-stats/git-quick-stats ~/bin/git-quick-stats
chmod +x ~/bin/git-quick-stats
export PATH=${PATH}:~/bin

使用法:

git-quick-stats

ここに画像の説明を入力してください

おすすめ記事