Git ofrece tres niveles distintos para excluir archivos del control de versiones, y no todos los usuarios los conocen. El primero y más conocido es .gitignore, un archivo que se commitea al repositorio y sirve para que el equipo ignore de forma compartida patrones como node_modules/, archivos de compilación o credenciales locales. El segundo es .git/info/exclude, un archivo local que vive dentro de la carpeta .git de cada repositorio: sus cambios no se suben al remoto, lo que lo hace ideal para reglas personales —por ejemplo, un notes.txt propio del flujo de trabajo de un desarrollador— que no deben compartirse con el resto del equipo. El tercero es ~/.config/git/ignore, un archivo global a nivel de máquina que aplica las mismas exclusiones a todos los repositorios del equipo; es la opción recomendada para patrones recurrentes del sistema operativo, como .DS_Store en macOS o Thumbs.db en Windows. Quien prefiera otra ruta puede redefinir el archivo global con git config --global core.excludesFile y, para volver al comportamiento por defecto, ejecutar git config --global --unset core.excludesFile. Además, el comando git check-ignore -v indica de forma explícita qué archivo y qué línea están provocando la exclusión, lo que resulta muy útil para depurar reglas que no se comportan como se espera. Conocer estos tres niveles permite mantener repositorios limpios, evitar commits accidentales de archivos locales y aplicar políticas de ignore coherentes entre la configuración personal y la del proyecto.
