Por Anónimo (no verificado) , 29 Abril 2026

Sinopsis

git status [-s] [-b] [--porcelain[=<version>]] [--ignored]

Descripción

El comando git status muestra el estado del árbol de trabajo y del área de staging. Muestra qué archivos están staged para el próximo commit, cuáles están modificados pero no staged y cuáles no están rastreados. También reporta el branch actual, si está ahead o behind del upstream y cualquier operación en curso como merges o rebases.

git status es el comando Git más ejecutado: es seguro, rápido e informativo. Úsalo constantemente para confirmar en qué estado está tu repositorio antes de tomar decisiones. La salida predeterminada es amigable para humanos con color y consejos; la salida --porcelain es estable, legible por máquina y pensada para scripts.

En el uso diario, git status se integra estrechamente con alias de shell, plugins de editor e integración continua. Los usuarios avanzados a menudo añaden alias que combinan los flags que siempre pasan, o envuelven el comando en scripts que hacen cumplir convenciones de equipo. El formato de salida puede personalizarse vía configuración de Git: formatos pretty, esquemas de color y comportamiento del paginador son ajustables. Cuando algo sale mal, el primer paso de diagnóstico suele ser re-ejecutar el comando con GIT_TRACE=1 en el entorno, lo que revela las llamadas plumbing subyacentes. Para situaciones inusuales, la salida de --help (git status --help) abre la página de manual completa con detalles de cada opción.

Entender cómo git status interactúa con el resto del modelo de datos de Git rinde dividendos. Cada comando opera sobre algún subconjunto de las piezas (objetos, index, refs, árbol de trabajo), y saber cuáles toca ayuda a predecir resultados y a recuperarse de errores.

Opciones comunes

OpciónDescripción
-s, --shortMuestra en formato corto con códigos de estado de dos caracteres.
-b, --branchMuestra info de branch y seguimiento incluso en formato corto.
--porcelainSalida estable legible por máquina para scripts.
--ignoredTambién muestra archivos ignorados.
-u <mode>Controla cómo se reportan los archivos no rastreados (no, normal, all).
--ahead-behindCalcula conteos ahead/behind vs upstream.

Ejemplos

git status
# Estado completo legible por humanos

git status -sb
# Formato compacto con info de branch

git status --porcelain=v2 --branch
# Salida estable para scripts y editores

git status --ignored
# Incluye archivos coincidentes con .gitignore

Errores comunes

Los principiantes a veces se asustan cuando git status muestra muchos archivos no rastreados en un repo recién clonado con artefactos de build. Añade un .gitignore apropiado para filtrarlos. Otra trampa es parsear la salida predeterminada en scripts: el formato puede cambiar entre versiones y traducciones. Siempre usa --porcelain para automatización. Finalmente, directorios grandes no rastreados pueden ralentizar status considerablemente; usa -uno para saltarlos.

Comandos relacionados

git diff, git log, git add, git stash