que - Git Ignora todo en un directorio excepto las subcarpetas
gitignore>? (3)
Esta es mi estructura de carpetas:
data/
.gitignore
uploads/
.gitignore
Me gustaría cometer las carpetas pero no los archivos dentro de ellas.
Así que agrego un archivo .gitignore en cada carpeta con el siguiente contenido:
# Ignore everything in this directory
*
# Except this file
!.gitignore
El problema es que *
coincide también en directorios, por lo que git rastrea solo data/.gitignore
La solución es bastante fácil, agregue !*/
los archivos .gitignore y solo se ignorarán los archivos en la carpeta actual
# Ignore everything in this directory
*
# Except this file
!.gitignore
# Except folders
!*/
Por favor, no .gitignore
mal los archivos .gitignore
. Es mejor atenerse a las formas predeterminadas de continuar con esto, para que los desarrolladores posteriores puedan entrar rápidamente en su proyecto.
- Agregue un archivo
.gitkeep
vacío en las carpetas que desea confirmar sin los archivos Excluya las carpetas, pero no la
.gitkeep
de su archivo principal.gitignore
.folder/* !folder/.gitkeep
Esto ignora todos los archivos en una carpeta, pero no el archivo .gitkeep
. Ahora la carpeta se comprometerá solo con el archivo .gitkeep
como contenido.
Prueba esto:
*.*
!.gitignore
!*/*