Git: Lista files que deben ser ignorados, pero no son

Nota:

Esto no se trata de arreglar como git rm -r --cached . && git add . git rm -r --cached . && git add . De hecho, quiero poder enumerar los files solo.

Por qué:

A veces, cuando edito mi .gitignore y olvido el command anterior, termino con los files que todavía están en el repository, pero deberían haber sido ignorados.

Qué:

Lo que quiero lograr es escribir un script de shell, que sea capaz de enumerar todos los files en mi sistema de files que should haber sido ignorados, pero aún están presentes.

Salir:

Al final, quiero implementarlo en un server de continuous integration, que verificará si las reglas de .gitignore coinciden con los files que están dentro del repository.

¿Hay alguna forma de analizar el .gitignore a mano?

 git ls-files --cached --ignonetworking --exclude-standard 

Debería ver git check-ignore --help Puede usarlo para verificar si una ruta debe includese o excluirse. Según entiendo, para hacer lo que quieras debes usar la --no-index .

Ese es al less el lado git del process.

El lado de la caparazón del process involucraría más. Tienes muchas opciones allí. Puede usar find para listr todos los files y canalizarlos git check-ignore y en function del resultado de eso crear una list de files que deberían haberse excluido.

Esa es mi 2 ¢ de todos modos.

Aquí hay una pregunta TAN que cubre algo similar al command Git para mostrar qué files específicos son ignorados por .gitignore