UP | HOME

Git: zonas y estados

Table of Contents

En general, los ficheros de un repositorio pueden estar en dos estados:

Sin embargo, Git introduce un concepto nuevo llamado staging area o área de preparación lo que hace que los ficheros puedan encontrarse en más estados que los simples "modificado" y "no modificado".

Entraré en los detalles más adelante porque primero es necesario hablar de las zonas existentes en Git.

Zonas principales de Git

En Git tenemos tres zonas:

  • Directorio de trabajo (working directory): se trata de la carpeta del proyecto, dentro de la cual están los ficheros y otras carpetas.
  • Área de preparación (staging area): es la zona donde hay que meter los ficheros con cambios para meterlos en la siguiente revisión o commit.
  • Repositorio (repository): es la zona manejada por Git.

Esto permite que, cuando tengamos ficheros con cambios, podamos decidir qué cambios formarán parte del siguiente commit dejando otros cambios para posteriores commits.

staging_area.png

Figure 1: Staging Area

Así pues, el commit contendrá los cambios que previamente hayamos metido en el staging area.

Estados de un fichero

Los ficheros dentro de un directorio de trabajo en el que tenemos un repositorio de Git pueden estar en diferentes estados, a saber:

  • No rastreado (untracked): un fichero está en este estado si se encuentra en el directorio de trabajo pero no en el repositorio y, por tanto, Git no lo está rastreando, es decir, no tienen seguimiento por parte de Git.
  • Modificado (modified): un fichero está en este estado si está en el repositorio pero la versión del repositorio está obsoleta con respecto a la versión que hay en el directorio de trabajo. Esto se da porque se ha modificado el fichero y no se han registrados por medio de un commit esos cambios. Así pues, la versión del repositorio no coincide con la versión del directorio de trabajo.
  • Preparado (staged): un fichero modificado puede ser metido a este estado para que esos cambios se introduzcan en el repositorio en la siguiente revisión o commit. Dicho de otro modo, son cambios marcados para ir en el próximo commit.
  • Confirmado (committed): un fichero sincronizado y sin diferencias con respecto al repositorio está confirmado.

Workflow o flujo de trabajo

Entendido qué son las zonas y los estados en que puede estar un fichero de un respositorio de Git, veamos, a modo de resumen, el flujo de trabajo habitual cuando usas Git en tus proyectos:

  1. Modificas ficheros en tu directorio de trabajo.
  2. Seleccionas los cambios que quieres que vayan en tu próximo commit añadiéndolos al stage area o área de preparación.
  3. Realizas un commit con los cambios que metiste en el paso anterior en el stage area.
  4. Vuelves al paso 1.

Author: Román Ginés Martínez Ferrández

Created: 2025-07-21 lun 13:08

Validate