Подтвердить что ты не робот

Список файлов, которые были изменены с момента последнего коммита с помощью GitPython

Мне нужно, чтобы Python script читал файлы, которые были изменены с момента последнего Git commit. Используя GitPython, как бы получить тот же результат, что и запуск из cli:

$ git diff --name-only HEAD~1 HEAD

Я могу сделать что-то вроде следующего, однако мне нужны только имена файлов:

hcommit = repo.head.commit
for diff_added in hcommit.diff('HEAD~1').iter_change_type('A'):
    print(diff_added)    
4b9b3361

Ответ 1

Вам нужно передать аргумент ключевого слова name_only - он будет автоматически использоваться как опция --name-only командной строки, когда будет выдан команду git.

Ниже приведен эквивалент git diff --name-only HEAD~1..HEAD:

diff = repo.git.diff('HEAD~1..HEAD', name_only=True)
print(diff)