GitPython: получать измененные файлы между коммитами в определенном подкаталоге - PullRequest
0 голосов
/ 07 ноября 2019

Структура репо выглядит следующим образом:

- folder_a
- folder_b
- folder_c
- ...

Меня особенно интересуют файлы, которые изменились в конкретном коммите, но только файлы в folder_a . Мое решение -

for filename, details in commit.stats.files.items():
  if not filename.startswith('folder_a'):
     continue
  # ...

, но кажется, что производительность не очень хорошая, если в других папках много файлов. Есть ли лучший способ пропустить файлы, которые меня не волнуют?

1 Ответ

0 голосов
/ 07 ноября 2019

Если я правильно понимаю: вам нужна статистика по изменениям коммита, только по одной определенной подпапке.

Использование простого git:

git show [commit] --stat folder_a

отобразит именно то, что вы хотите.

Посмотрите, что: git.show('<commit identifier>', '--stat', 'folder_a'); возвращается в вашем скрипте Python.

...