2.1 Inicializando un repositorio y el ciclo de vida
El comando git init y los tres estados de Git
Ya tienes Git instalado y configurado para ti. Ahora es momento de poner a tus archivos bajo vigilancia y empezar a gestionar tus cambios de forma segura.
Dando vida al repositorio
Imagina que tienes una carpeta en tu ordenador con unos archivos de código en los que has estado trabajando. Para decirle a Git que empiece a rastrear esa carpeta, abre tu terminal, navega a ese directorio y ejecuta:
git init
Esto crea silenciosamente una carpeta oculta llamada .git. Ese es el cerebro de la operación, donde Git guarda su base de datos. A partir de ese momento, tu carpeta ya es un repositorio, pero Git no guardará tus archivos automáticamente. Tienes que indicarle qué quieres rastrear.
El archivo mágico: .gitignore
Antes de rastrear archivos, hay una regla de oro en el desarrollo: no todos los archivos deben versionarse. Cosas como carpetas de dependencias enormes (node_modules), archivos compilados (.exe, .dll), o archivos con contraseñas secretas (.env) jamás deben entrar al repositorio.
Para evitar accidentes, en la raíz de tu proyecto creas un archivo de texto llamado simplemente .gitignore. Dentro, escribes patrones de los archivos que Git debe ignorar por completo. Por ejemplo:
# Ignorar dependencias de Node node_modules/ # Ignorar archivos secretos de entorno .env # Ignorar logs *.log
Crear este archivo antes de tu primer guardado te ahorrará dolores de cabeza masivos en el futuro.
Los tres estados de Git
Este es el concepto más importante que debes interiorizar. Si comprendes esto, no tendrás problemas con los comandos. En Git, tus archivos pueden residir en tres estados conceptuales:
- Working Directory (El Taller): Es tu carpeta visible, donde editas y modificas archivos.
- Staging Area (La Caja de Empaque): Es un área de preparación. Cuando estás satisfecho con una modificación, la pones en la caja. Aún no se ha guardado en la historia permanente.
- Repository (El Almacén): Es la base de datos de Git. Cuando cierras la caja y la etiquetas, el paquete entra al historial de manera definitiva.
¿Por qué existe este paso intermedio del Staging Area? Porque como desarrollador, a veces cambias cinco archivos a la vez, pero resuelves dos problemas distintos. El Staging te permite empacar los tres archivos del primer problema en un paquete limpio, y dejar los otros dos para empaquetarlos en un paquete separado después. Esto mantiene tu historial lógico y ordenado.
Puntos clave
git initconvierte cualquier directorio normal en un repositorio.- El archivo
.gitignorees fundamental para evitar subir contraseñas o archivos temporales pesados al control de versiones.
- Git opera mediante tres estados lógicos: Trabajando, Preparando (Staging) y Confirmado (Repository).