Appearance
Archivo .gitignore
Este archivo es crucial para el control de versiones con Git. Le dice a Git qué archivos y directorios no debe rastrear ni incluir en el repositorio. Esto mantiene tu historial de Git limpio y ligero, evitando la inclusión de archivos generados, caché o información sensible.
- Descripción:
.gitignorees un archivo de texto plano que lista patrones de archivos y carpetas que Git debe ignorar. Estos patrones evitan que archivos temporales, dependencias instaladas o resultados de compilación se añadan accidentalmente al historial del proyecto. - Propósito:
- Mantener el Repositorio Limpio: Excluye archivos que no son código fuente esencial (ej.,
node_modules,dist), reduciendo el tamaño del repositorio y acelerando las operaciones de Git. - Evitar Conflictos Innecesarios: Previene conflictos de merge para archivos generados automáticamente que varían entre diferentes entornos o máquinas de desarrollo.
- Proteger Información Sensible: Evita que archivos con credenciales (
.envsi no está cubierto por.dockerignore) o configuraciones locales se suban accidentalmente al repositorio.
- Mantener el Repositorio Limpio: Excluye archivos que no son código fuente esencial (ej.,
- Contenido Clave:
# Logs: Sección para ignorar archivos de log.logs/,*.log: Directorios y archivos de log generales.npm-debug.log*,yarn-debug.log*,pnpm-debug.log*,lerna-debug.log*: Archivos de depuración específicos de diferentes gestores de paquetes.
node_modules: Directorio donde se instalan las dependencias de Node.js. Es fundamental ignorarlo, ya que estas dependencias se manejan a través depackage.jsony se reinstalan en cada ambiente.dist/,dist-ssr/: Directorios donde se guarda el código compilado y listo para producción, tanto para el cliente (dist) como para el renderizado del lado del servidor (dist-ssr, si aplica). Estos son resultados de un proceso debuild.*.local: Ignora archivos con la extensión.local, a menudo usados para configuraciones locales que sobrescriben variables de entorno o configuraciones.# Editor directories and files: Sección para ignorar archivos específicos de editores de código y sistemas operativos..vscode/*: Ignora todos los archivos dentro de la carpeta.vscode/(configuraciones de VS Code).!.vscode/extensions.json: Excepción: La!(exclamación) indica que, aunque.vscode/*se ignora, el archivoextensions.jsonsí debe ser incluido. Este archivo es útil para que todos los desarrolladores del equipo usen las mismas extensiones recomendadas en VS Code..idea/: Directorios de configuración de IntelliJ IDEA..DS_Store: Archivos ocultos generados por macOS.*.suo,*.ntvs*,*.njsproj,*.sln,*.sw?: Archivos de proyecto y temporales específicos de entornos de desarrollo de Microsoft (ej., Visual Studio) o archivos de swap de editores como Vim.
- Rol en el Proyecto:
.gitignorees una guía esencial para el control de versiones. Asegura que el repositorio de Git contenga solo el código fuente y los archivos de configuración necesarios, facilitando la colaboración, la consistencia del entorno y el despliegue.
bash
# .gitignore
# Archivos y directorios de logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
# Dependencias y resultados de compilación
node_modules # Dependencias del proyecto
dist # Salida de compilación para producción (cliente)
dist-ssr # Salida de compilación para Server-Side Rendering (si aplica)
*.local # Archivos de configuración local (ej. .env.local)
# Directorios y archivos específicos de editores y sistemas operativos
.vscode/* # Configuración de Visual Studio Code (ignora todo)
!.vscode/extensions.json # Excepto este archivo, que lista extensiones recomendadas
.idea # Configuración de IntelliJ IDEA
.DS_Store # Archivos de sistema de macOS
*.suo # Archivos de solución de Visual Studio
*.ntvs* # Archivos de Visual Studio para Node.js Tools
*.njsproj # Archivos de proyecto de Node.js en Visual Studio
*.sln # Archivos de solución de Visual Studio
*.sw? # Archivos de swap de editores (ej. Vim)