Я уже знаю, как получить разницу между двумя коммитами, а также получить их файл за файлом. Я также знаю (благодаря этой теме количество строк в репозитории git ) что вы можете использовать Cloc, чтобы получить только фактические строки кода, а не все строки.
Но как мне сделать, чтобы получить разницу в строках кода только в git, I: E, используя cloc для двух разных коммитов?
Это дает мне распечатку кода с добавлением (+) до и удалением (-). Но здесь я не могу использовать cloc напрямую, мне пришлось бы сделать некоторый синтаксический анализ
git diff `git rev-list --since="jun 30 2014" --reverse origin/master | head -1`..`git rev-list --until="dec 31 2014" origin/master | head -1`
Здесь я получаю все файлы, измененные и добавленные/измененные строки в первом столбце. Проблема в том, что это включает пустые строки и комментарии.
git diff `git rev-list --since="jun 30 2014" --reverse origin/master | head -1`..`git rev-list --until="dec 31 2014" origin/master | head -1` --numstat
Есть ли способ сделать это, не получая пустых строк или комментариев? I: E использует Cloc вместо собственного алгоритма сравнения Gits? И если да, то как я могу это сделать?
Заранее спасибо.