Автоматический подсчет изменений (например, добавленных / удаленных букв) по всей ветви git - PullRequest
2 голосов
/ 20 февраля 2020

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

Я знаю, как использовать git diff только между двумя коммитами. Есть ли инструкция, которая решает проблему?

Прочая информация: зачем мне эта функция?

Для меня цель должна состоять в том, чтобы построить эволюцию работать, используя некоторые цифры достоинств. Я знаю, что эта заслуга абсолютно далека от того, чтобы быть хорошим показателем c. Тем не менее, по-прежнему интересно иметь эти данные и использовать их так, как вы предпочитаете (построение графика эволюции с использованием python является лишь примером).

Идея о том, как его выполнить :

  • для выполнения git diff всех последовательных коммитов в ветви.
  • для подсчета для каждого вывода предыдущего пункта количества букв (с различием между удаленным и добавленным).
  • , чтобы сохранить данные в некоторой переменной и использовать результат так, как вы предпочитаете.

Я постараюсь реализовать процедуру со скриптом и поделитесь решением в этом вопросе. Однако мне интересно, есть ли другие прямые методы

1 Ответ

0 голосов
/ 21 февраля 2020

Как я и обещал, я написал python скрипт, который выполняет грязную работу. Его можно найти в этом git репо . Результат будет выглядеть следующим образом:

enter image description here

По сути, я обнаружил библиотеку python, которая неплохо работает с git. Подробнее об этом ссылка . Название библиотеки: GitPython и является хорошим проектом с открытым исходным кодом.

Стратегия проста и была объяснена в рамках вопроса. Чтобы использовать библиотеку, после установки (я использовал conda), вам нужно просто импортировать:

from git import Repo

Позже, в коде, вы можете использовать все API, которые вы можете найти в ссылка выше. Не стесняйтесь повторно использовать сценарий со ссылкой на работу.

Более того, если вы хотите внести свой вклад, добавив функции, сделайте это: я буду рад протестировать новые решения. Например, в будущем могут быть реализованы minimalisti c GUI или управляющий или несколько филиалов.

...