Combina plantillas .gitignore por lenguaje, framework, IDE y SO
También podrías necesitar
Un archivo .gitignore bien configurado es la primera línea de defensa contra dos problemas: 1) commits accidentales de secretos (.env, credenciales, keys) que quedan en la historia de Git incluso si los borras después; 2) ruido innecesario en el repositorio (node_modules, __pycache__, .DS_Store, DerivedData) que hace más lento el clonado y ensucia diff/status. Sin embargo, mantener .gitignore es tedioso: cada lenguaje, framework, IDE y sistema operativo tiene sus propios patrones. Esta herramienta te permite componer un .gitignore completo eligiendo plantillas de 25+ tecnologías organizadas por categoría. Cada plantilla contiene los patrones más comunes recolectados de las convenciones oficiales del ecosistema (basados en gitignore.io y github/gitignore). Puedes seleccionar múltiples plantillas — por ejemplo, un proyecto típico Next.js + macOS + VSCode combina tres plantillas — y la herramienta genera un archivo unificado con separadores claros entre secciones. El botón 'Descargar' te da un archivo .gitignore listo para el root de tu repositorio.
¿Cuál es la diferencia entre esta herramienta y gitignore.io?
gitignore.io (mantenido por Toptal) es el estándar de facto y tiene ~500+ plantillas. Esta herramienta ofrece las 25+ plantillas más comunes (que cubren el 95% de proyectos), curadas y con nombres en español. Además de generar y copiar, permite descargar directamente el archivo. Si tu stack incluye tecnologías muy específicas o legacy (Amiga, ATmega, etc.), usa gitignore.io. Para stacks modernos habituales, esta herramienta es más rápida y directa.
¿Debo incluir la plantilla del sistema operativo?
Si vas a colaborar con otros desarrolladores, sí. macOS crea .DS_Store en cada directorio, Windows crea Thumbs.db, algunos entornos Linux crean archivos temporales o de Trash. Incluir la plantilla de tu SO evita que estos archivos se commiteen accidentalmente. Como buena práctica, muchos equipos incluyen los tres SO (macOS + Windows + Linux) porque el equipo puede ser heterogéneo.
¿Los patrones son exclusivos o pueden solaparse?
Puede haber solapamiento: ambos Node.js y Next.js incluyen node_modules/, la plantilla de Java y Spring Boot ambos ignoran target/. Los patrones duplicados en .gitignore no causan errores — Git simplemente los aplica una vez. Sin embargo, el resultado es más limpio y legible si eliges plantillas complementarias en lugar de superponerse (Next.js ya cubre lo específico de Node, por ejemplo).
¿Puedo modificar el .gitignore generado?
Sí, el output es texto plano y puedes copiarlo, editarlo y añadir tus propios patrones antes de commitear. Es común añadir patrones específicos del proyecto: /uploads/, /storage/private/, config.local.json, etc. Recuerda que el orden importa cuando hay negaciones (!archivo): un patrón posterior con ! puede des-ignorar un archivo que un patrón anterior había ignorado.
¿Qué pasa si añado .gitignore después de haber commiteado archivos?
El .gitignore solo aplica a archivos que Git aún no tracks. Si ya commiteaste node_modules/ o un .env antes de crear el .gitignore, seguirán siendo tracked. Para removerlos, ejecuta 'git rm --cached <archivo>' (borra del index pero mantiene en disco) y commitea. Para credenciales o secretos ya commiteados, además necesitas limpiar la historia con 'git filter-repo' o BFG Repo-Cleaner, y considerar rotar los secretos expuestos.