Zastanawiam się, czy ktokolwiek ma bardziej wydajny i inteligentny sposób na zrobienie tego. Konstrukcja pętli wymaga usunięcia wszystkich usuniętych plików z każdego zatwierdzenia przez przeczytanie każdego zatwierdzenia. Z wieloma zobowiązaniami zajmuje to dużo czasu.git usuń wszystkie usunięte pliki z całej historii
git log --pretty=format: --name-status | grep -i ^D | cut -f2- | sort -u | xargs -I {} git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch {}' HEAD
Znalazłem użyteczne 'grep -v -x-f/tmp/files-in-repo.txt' wraz z' xargs --delimiter = \\ n -r git rm ... '. –