Tema 3 · Arquitectura

Inicializar un Repositorio: Los Tres Estados de Git

Aprende a transformar cualquier carpeta en un repositorio de Git con git init, qué contiene la carpeta oculta .git y cómo viajan tus archivos a través de los Tres Estados Fundamentales.

1. El Comando git init

Para que Git empiece a rastrear los cambios de un proyecto nuevo o existente, basta con posicionarte dentro de la carpeta raíz de tu código en la terminal y ejecutar:

cd /ruta/a/mi-proyecto
git init

Al hacer esto, Git crea una subcarpeta oculta llamada .git. Esta carpeta es el corazón del proyecto: contiene toda la base de datos de versiones, los punteros a ramas, el índice de preparación y la configuración local.

⛔ Regla de Oro: ¡Nunca borres ni edites manualmente los archivos dentro de la carpeta .git! Si borras la carpeta .git, tu proyecto vuelve a ser una carpeta normal y perderás todo el historial de versiones acumulado.

2. Los Tres Estados Fundamentales de Git

Para dominar Git, debes entender la arquitectura de los tres árboles o estados por los que transita cada archivo:

Infografía Técnica: El Ciclo de Vida y los Tres Estados de Git

Diagrama 1.1: Flujo de estados entre tu espacio de trabajo local, el área de preparación, el repositorio local y GitHub.

Estado Ubicación ¿Qué representa? Comando de transición
1. Modificado (Modified) Directorio de Trabajo (Working Directory) Tus archivos físicos reales en disco. Los has creado, editado o borrado en tu editor (VS Code, PHPStorm, etc.), pero Git aún no los ha preparado para una versión oficial. Edición manual en tu editor de código.
2. Preparado (Staged) Área de Preparación (Staging Area o Index) Una zona intermedia de selección. Aquí marcas con precisión qué archivos o fragmentos formarán parte del próximo punto de control. git add <archivo>
3. Confirmado (Committed) Repositorio Local (.git) Los cambios quedan grabados de forma permanente, inmutable e histórica en la base de datos de Git con un identificador único (hash SHA). git commit -m "mensaje"

¿Por qué existe el Área de Preparación (Staging Area)?

A diferencia de sistemas antiguos que guardaban todo de golpe, el Staging Area te da el poder de separar tus cambios lógicamente. Si en una tarde modificaste 5 archivos (3 de un botón y 2 corrigiendo un error de ortografía), puedes preparar y confirmar solo los 2 de ortografía en un commit limpio, y luego los otros 3 en otro commit separado.

⚡ Flujo Completo de Inicialización y Primer Commit

Ejemplo práctico paso a paso para crear un proyecto, inicializar Git y realizar tu primera confirmación oficial:

primer-repositorio.sh
Solo lectura
# 1. Crear una carpeta para el proyecto y entrar en ella:
mkdir mi-primer-sitio
cd mi-primer-sitio

# 2. Inicializar el repositorio Git:
git init

# 3. Crear un archivo index.html básico:
echo "<h1>Bienvenido a Kilopolis Academia</h1>" > index.html

# 4. Comprobar el estado (el archivo aparecerá en rojo / Untracked):
git status

# 5. Pasar el archivo al Área de Preparación (Staging Area):
git add index.html

# 6. Comprobar de nuevo (ahora aparecerá en verde / Changes to be committed):
git status

# 7. Confirmar de forma permanente en el historial del repositorio:
git commit -m "feat: inicializar proyecto con landing básica"
🦉
¿Tienes dudas con este tema?
Sócrates AI puede darte analogías y explicarte este código paso a paso.

🚀 ¿Quieres dominar Manual Completo de Git & GitHub Profesional y crear proyectos reales?

Aprende arquitectura limpia, desarrollo web moderno, buenas prácticas y despliegue en producción con nuestro Bootcamp Fullstack Developer con mentorías en vivo.

🏛️ Autoría y Propiedad Intelectual: Obra educativa original de David Amador para Kilopolis Academia (Solucionáticos), estructurada sobre las especificaciones y estándares abiertos del W3C, el estándar vivo de WHATWG y la documentación oficial de código abierto. © Todos los derechos reservados.