Si lo intenta de esa manera, fallará, porque terminará en la lista negra de los directorios de su estructura.
Para resolverlo, desea incluir en la lista negra todo lo que no sea un directorio y no sea uno de los tipos de archivos que desea confirmar, mientras que no incluya directorios .
El .gitignore
archivo que hará esto:
# First, ignore everything
*
# Now, whitelist anything that's a directory
!*/
# And all the file types you're interested in.
!*.one
!*.two
!*.etc
Probé esto en una lista blanca de estructura de tres niveles para .txt
archivos en presencia de *.one
, *.two
y *.three
archivos que usan un .gitignore
ubicado en el directorio raíz del repositorio, funciona para mí. No tendrá que agregar .gitignore
archivos a todos los directorios de su estructura.
La información que utilicé para averiguar la respuesta provino, entre otras cosas, de esto (stackoverflow.com).