1. Ignorar un directorio en la raíz
Esta regla en el .gitignore raíz excluye logs/app.log y todo logs en la raíz, pero permite seguir packages/api/logs/app.log. El / inicial ancla el patrón al directorio del .gitignore.
/logs/ 2. Ignorar directorios a cualquier profundidad
Usa esta alternativa para ignorar todos los directorios logs. El / final limita la regla a directorios; logs sin barra puede coincidir también con un archivo.
En un .gitignore anidado, los patrones son relativos a su ubicación: /logs/ indica el logs local, no el de la raíz del repositorio. packages/api/logs/ ya tiene barras internas y es relativo al .gitignore.
logs/ 3. Verificar el alcance
Crea los dos archivos sin seguimiento y ejecuta esto desde la raíz. Compara la fuente y el patrón:
git check-ignore -v -- logs/app.log packages/api/logs/app.logCon /logs/ solo debe coincidir la ruta raíz; con logs/, ambas. Otras reglas pueden alterar el resultado. Los archivos seguidos requieren otro tratamiento; consulta las excepciones para conservar un archivo en un directorio ignorado.
Consulta las referencias oficiales para conocer el comportamiento exacto y más detalles: Documentación de Git · Documentación de git check-ignore