Суммируйте изменения (вставки и удаления) в Git [закрыто]

47

Я хочу посмотреть, как со временем выросла моя кодовая база. GitHub имеет хорошее +/-отображение в списке проверок, что дает ощущение этого. Могу ли я использовать что-то подобное с моим репозиторием в Google Code или в автономном режиме?

Potatoswatter
источник
1
Я голосую, чтобы закрыть этот вопрос как не по теме, потому что используются инструменты, специфичные для разработки программного обеспечения. Эти вопросы относятся к переполнению стека, но этот вопрос слишком старый для миграции.
Томас Оуэнс
Рекомендуемое чтение: Куда уходит мой вопрос о git?
комнат

Ответы:

71

В Git есть несколько опций для получения данных об изменениях.

git log --stat покажет количество каждого файла было изменено.

git whatchanged дает некоторые детали в файлы, которые были изменены.

git diff --stat <sha1> <sha2> дает файлы и количество изменений между двумя коммитами.

Есть много других блогов, которые дают различные отформатированные журналы. Поиск в Google может указать вам на это. Также это git log --helpдаст различные варианты форматирования истории вашего репо. Git имеет возможность предоставлять вам довольно мало данных с помощью различных параметров командной строки log(фильтрация по автору, файлу и т. Д.).

Schleis
источник
6
Красивый! Благодарю. Теперь я также вижу, --numstatпредоставляет менее сладкий, но чистый альтернативный формат.
Potatoswatter
18
--shortstatпросто распечатает итоги.
Кейси
1
иметь в виду , что git diff --stat <sha1> <sha2>не включает в себя вставки и делеции в <sha1>, так что вы должны поставить на shaфиксацию только до <sha1>к включает в себя<sha1>
Vaibhav Vishal
18

Если вы знаете , совершающие вы хотите сравнить, вы можете попробовать использовать в git diffкоманду с --statаргументом. Это дает вывод, как это:

$ git diff --stat HEAD^ HEAD
_layouts/default.html |    1 -
_sass/_variables.scss |    2 +-
_sass/main.scss       |   42 +++++++++++++++---------------------------
3 files changed, 16 insertions(+), 29 deletions(-)
Майк Госсманн
источник
2
Всегда любите пример, который работает в большинстве случаев (HEAD - 1) вместо абстракции. Спасибо, Майк!
SimplGy