1
if
진술이 몇 개 있는지를 계산하고 작성자별로 그룹화하려면 어떻게해야합니까? 내가하고 싶은 것에저자에 의한 git 히스토리 및 그룹 검색
예 :이 가능한 경우
git count-by-author "if ("
245 Author A
199 Author B
20 Author C
나는 주로 소개 if
의 수에 관심과 if
문을 수정하지 않다.
if
진술이 몇 개 있는지를 계산하고 작성자별로 그룹화하려면 어떻게해야합니까? 내가하고 싶은 것에저자에 의한 git 히스토리 및 그룹 검색
예 :이 가능한 경우
git count-by-author "if ("
245 Author A
199 Author B
20 Author C
나는 주로 소개 if
의 수에 관심과 if
문을 수정하지 않다.
는 더 순수 자식 솔루션이 없다, 그러나 당신은 통계를 얻기 위해 다음의 bash 스크립트를 사용할 수 있습니다 :
for sha in $(git log --format=%H); do
author="$(git show --format=%an $sha | head -n1)"
removed_if_statements=$(git show $sha | grep -E '^\-(.*)?if \(' | wc -l)
added_if_statements=$(git show $sha | grep -E '^\+(.*)?if \(' | wc -l)
delta=$(($added_if_statements - $removed_if_statements))
if [ $delta -gt 0 ]; then
for x in $(seq 1 $delta); do
echo $author
done
fi
done | sort | uniq -c | sort -rg
니스! 일을 올바르게 정렬하기 위해 -g를 추가해야했습니다. (예 : 8은 1100보다 먼저 정렬되었습니다.) – oskbor
감사합니다. – qzb
도 감사합니다.이 줄에는 x에 {1 .. $ 델타}; do' – oskbor