# Probador de glob y .gitignore

Prueba patrones glob y reglas .gitignore con una lista de rutas y mira qué rutas coinciden y qué regla lo hizo.

https://codeknife.dev/es/probador-glob/

## Qué hace

Prueba patrones glob y reglas `.gitignore` con una lista de rutas. Cada ruta se marca como coincidente o no, con el patrón responsable al lado, para que veas por qué `src/lib/util.test.ts` entra o queda fuera.

## Cómo se usa

1. Pega una ruta por línea, o suelta un archivo de texto, en **Rutas**.
2. Escribe un patrón por línea en **Patrones**. Las líneas que empiezan por `#` son comentarios.
3. Elige **Glob**, **Bash** o **Gitignore**, y muestra todas las rutas, solo las coincidencias o solo las que no coinciden.
4. Copia el resultado.

## Ejemplos

Con los patrones `src/**/*.ts` y `!**/*.test.ts`, la ruta `src/lib/util.ts` coincide y `src/lib/util.test.ts` no, porque la exclusión gana. Con las reglas `.gitignore` `*.log` y `!keep.log`, `app.log` se ignora y `keep.log` no.

## Conviene saber

- `*` se queda en un directorio, `**` cruza directorios, y `?`, `[ab]` y `{a,b}` funcionan como en picomatch.
- Los archivos ocultos como `.env` solo coinciden si activas **Incluir archivos ocultos** o el patrón nombra el punto.
- En Glob y Bash, un patrón que empieza por `!` excluye lo que encontraron los demás. En Gitignore gana la última regla que coincide, como en Git.
- Bash lee `**` como un simple `*`, como una shell sin `globstar`.
- Las rutas se comparan como texto. No se lee nada de un disco.

## ¿Qué significan las tres sintaxis?

Glob es la sintaxis picomatch de la mayoría de herramientas de compilación: * se queda en un directorio, ** cruza directorios, y también funcionan llaves como {a,b}, clases como [ab] y ?. Bash lee ** como un simple *, como una shell sin globstar. Gitignore sigue las reglas de .gitignore: una barra final indica un directorio, una barra inicial ancla a la raíz, y una regla ! posterior vuelve a incluir lo que una anterior ignoraba.

## Preguntas frecuentes

### ¿Qué regla se muestra junto a una ruta?

El primer patrón que coincide. En glob y bash, una ruta que descarta una exclusión (un patrón que empieza por !) muestra esa exclusión. En gitignore se muestra la regla que la ignoró.

### ¿Por qué * no coincide con un archivo que empieza por punto?

Los globs omiten los archivos ocultos salvo que el patrón nombre el punto. Activa Incluir archivos ocultos para que * y ? los encuentren, como bash dotglob. Un .gitignore no tiene ese interruptor.

### ¿Esta herramienta envía mis rutas a algún sitio?

No. Todo ocurre en tu navegador. Lo que escribes nunca se envía a nuestros servidores.