Как вывести список вставленных автором строк, исключая файлы? - PullRequest
0 голосов
/ 31 мая 2019

Я могу перечислить вклад каждого автора на вставленных или удаленных строках или символах, используя git log, например:

git log --shortstat --author "Steve Jobs"

Но как рекурсивно исключить определенные папки? Если я хочу перечислить вставленные строки конкретных пользователей без учета папки test (и всех файлов, которые в ней содержатся), он нажал?

Если люди нажали файл node_modules, количество вставленных строк резко возрастет, я не хочу их учитывать.

1 Ответ

1 голос
/ 03 июня 2019

Я наконец-то достиг этого:

Чтобы увидеть, как проект итога вставил и удалил строки для пользователя toto, исключая весь контент из node_modules, просто сделайте следующее:

git log --shortstat --author="toto <toto.tata@tutu.tete>" -- . ":\!node_modules" | grep -E "fil(e|es) changed" | awk '{files+=$1; inserted+=$4; deleted+=$6} END {print "files changed: ", files, "lines inserted: ", inserted, "lines deleted: ", deleted }'

будет выводить статистику в формате:

files changed: 31 lines inserted: 75293 lines deleted: 25

В случае, если вам нужен обзор каждого изменения, примененного вашими коллегами (исключая специальные файлы), вам нужно только сделатьскрипт для запуска этой команды со всеми участниками репозитория (можно найти с помощью git log --format='%aN' | sort -u)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...