git status

Instantáneas básicas

Muestra el estado de tus archivos de trabajo y del área de preparación


El comando 'git status' muestra qué archivos cambiaste, qué cambios están preparados para el próximo commit y qué archivos Git aún no sigue. Nunca cambia nada, así que puedes ejecutarlo en cualquier momento — hazlo antes de cada git add y cada git commit. También indica en qué rama estás y, con un remoto, cuánto vas por delante o por detrás.

Sinopsis

git status [<options>] [--] [<pathspec>...]
[ ] opcional| o<arg> valor a sustituir... repetible--flag opción

Opciones

Haz clic en una opción para desplegarla

Principiante (2)

Da la salida en formato corto: dos letras de estado por archivo (área de preparación y luego directorio de trabajo).

RecomendadoVista compacta para el día a día: dos letras de estado por archivo

Ejemplo

git status -s

Muestra la rama y el seguimiento, incluso en formato corto.

RecomendadoAñade la rama y los contadores de adelanto/atraso al formato corto

Ejemplo

git status -sb

Intermedio (1)

Da la salida en un formato estable y fácil de analizar para scripts. Es igual en todas las versiones de Git y con cualquier configuración.

Cuando haga faltaFormato estable legible por scripts

Ejemplo

git status --porcelain

Elegir la opción adecuada

Códigos del formato corto

Las dos columnas de git status -s

ComandoSignificado
?? fileSin seguimiento: Git no conoce el archivo
M fileModificado, no preparado
M fileModificado y preparado
MM filePreparado y luego modificado otra vez
A fileArchivo nuevo, preparado
D fileEliminado, no preparado

Ejemplos

Estado completo

git status

Lista los cambios preparados, los no preparados y los archivos sin seguimiento, con pistas.


Formato corto

git status -s

Una línea por archivo con un código de dos letras.


Corto con la rama

git status -sb

Formato corto más la rama y sus contadores de adelanto/atraso.

Ejemplos de flujos de trabajo

1
git status

Ver qué cambió

2
git add app.js

Preparar el archivo que quieres

3
git status

Comprobar que está en "Changes to be committed"

4
git commit -m "Add to cart"

Commit

Solución de problemas

Un archivo no aparece en git status

Causa: Está en .gitignore, o no ha cambiado

Compruébalo con git check-ignore -v <file>; los archivos con seguimiento sin cambios no se listan

git status es lento en un repositorio grande

Causa: Git recorre cada archivo del directorio de trabajo

Limítalo a una carpeta: git status src/

Consejos y trampas

Buenas prácticas

  • ✓Ejecuta git status antes de git add y antes de git commit.
  • ✓Lee las pistas: git status muestra el comando que deshace cada estado.
  • ✓Usa git status -sb para una vista compacta que aun así muestra la rama.

Errores comunes

  • ✗Hacer commit sin revisar git status y guardar archivos que no querías.
  • ✗Creer que un archivo sin seguimiento entrará en el commit — primero hay que añadirlo.
  • ✗Leer " M" y "M " como lo mismo: la columna indica si el cambio está preparado.

Preguntas frecuentes

A:

No. Solo lee tus archivos, el área de preparación y el último commit.

A:

Tus archivos, el área de preparación y el último commit son idénticos: no hay nada que confirmar.

A:

Lo preparaste y luego lo editaste otra vez. La versión preparada es la que guardará el próximo commit.