Вы можете перечислить файлы в конкретном коммите локального репо из каталога root этого репо следующим образом:
Для списка файлов, которые были изменены в фиксация:
git diff-tree --no-commit-id --name-only -r <hash/branch/tag> <file pattern>
Для списка всех файлов, присутствующих в дереве файлов (с изменениями или без них) в данной фиксации:
git ls-tree --name-only -r <hash/branch/tag> <file pattern>
Итак, если вы уже есть клон репозитория, вы должны иметь возможность создать сценарий для одного из вышеперечисленных, чтобы возвращать список любого шаблона файлов в локальном репо для любой фиксации, ветки или тега.
Например, чтобы получить все файлы в дереве файлов для удаленной фиксации ветки origin/master
, для всех файлов в каталоге myfolder
с совпадением с шаблоном *.jpg
используйте:
git ls-tree --name-only -r origin/master myfolder/*.jpg
Затем вы можете использовать итоговый список, однако, требуется с помощью дополнительных сценариев.