Tengo una estructura de directorios como esto:git ignorar todos los archivos de un tipo determinado, excepto aquellos en una subcarpeta específica
- raíz
- carpeta1
- abc.json
- def. json
- somedir
- more.json
- carpeta2
- qwe.json
- rty.json
- spec
- mock1.json
- mock2.json
- somedir
- more_mocks.json
- carpeta1
Ahora, utilizando un .gitignore
Quiero hacer caso omiso de todos los archivos *.json
a excepción de los de la spec
. No quiero utilizar un .gitignore
en folder1
y folder2
porque hay un montón de estos y se agregarán a un montón, y estoy seguro de que me olvidaré de mover el archivo .gitignore
correcto en su lugar.
Además, puede haber más directorios anidados con archivos json, y esta regla también debe aplicarse a todos los subdirectorios.
Entonces, ¿cómo puedo ignorar todos los archivos de un tipo, a excepción de un cierto subdirectorio?
También puede añadir un .gitignore a las especificaciones que contiene!/*. JSON, si lo prefiere. –
¡Gracias! Aunque en mi caso, me di cuenta de que no quería ignorar nada en mi directorio de especificaciones. Así que puedo salir con un '! Spec' muy simple. Funciona de maravilla. –
Mientras que la respuesta de Amber funciona cuando spec es un directorio bajo el nivel superior (es decir,/spec), no funciona para mí cuando spec es un subdirectorio, p./a/spec o a/b/spec. Usando git 1.7.5.4 –