Después de editar .gitignore
para que coincida con los archivos ignorados, puede hacer git ls-files -ci --exclude-standard
para ver los archivos que se incluyen en las listas de exclusión; entonces puedes hacer
//On Linux:
git ls-files -ci --exclude-standard -z | xargs -0 git rm --cached
//On Windows:
for /F "tokens=*" %a in ('git ls-files -ci --exclude-standard') do @git rm --cached "%a"
//On mac
alias apply-gitignore="git ls-files -ci --exclude-standard -z | xargs -0 git rm --cached"
para eliminarlos del repositorio (sin eliminarlos del disco).
Editar : también puede agregar esto como un alias en su archivo .gitconfig para que pueda ejecutarlo cuando lo desee. Simplemente agregue la siguiente línea en la sección [alias] (modifique según sea necesario para Windows o Mac):
apply-gitignore = !git ls-files -ci --exclude-standard -z | xargs -0 git rm --cached
(La -r
marca en xargs
evita que se git rm
ejecute en un resultado vacío e imprima su mensaje de uso, pero solo GNU findutils xargs
puede admitirlo. Otras versiones de mayo o mayo no tienen una opción similar).
¡Ahora puede escribir git apply-gitignore
su repositorio y hará el trabajo por usted!