Eu sou absolutamente péssimo em scripts de shell, então isso é certamente sub-ótimo, mas esse tipo de coisa pode fazer isso para você, supondo que você esteja usando o bash. Espero que alguém possa vir e limpá-lo ou substituí-lo por algo melhor. Eu só testei no meu Mac, então cuidado.
Deveria imprimir todos os arquivos em commits que são ancestrais do HEAD atual. Salve em um arquivo chamado manifest.sh
em algum lugar do seu caminho:
#!/bin/bash
TFILE=$(mktemp -t git-manifest)
for sha in $(git log --pretty=format:%H)
do
git ls-tree --name-only --full-tree -r $sha >> $TFILE
done
sort -u $TFILE
rm $TFILE