Git Diff

1 min

Tabla de contenidos

  1. ¿Qué es diff?
  2. Ver las diferencias
  3. Tipos de diff
  4. Lectura rápida
  5. Comandos prácticos

1. ¿Qué es diff?

Git diff = ver EXACTAMENTE qué ha cambiado en tus archivos.

¿Por qué es crucial?

  • Antes de hacer commit: comprobar tus modificaciones
  • Depuración: entender qué se ha roto
  • Revisión: ver el trabajo de los compañeros

En resumen: diff = tus gafas para ver los cambios.

Volver a la tabla de contenidos

2. Ver las diferencias

bash
mkdir demo-diff && cd demo-diff
git init

echo "print('Version 1')" > app.py
git add . && git commit -m "Versión inicial"

# Modificar el archivo
echo "print('Version 2 - Updated!')" > app.py

# Ver los cambios
git diff                    # Comparación working directory vs últimos commits

# Añadir al staging
git add app.py

# Ver la diferencia staged vs últimos commits  
git diff --staged

# Ver la diferencia entre 2 commits
git log --oneline          # Recuperar los hashes
git diff <hash1> <hash2>

Volver a la tabla de contenidos

3. Tipos de diff

ComandoCompara
git diffWorking directory vs último commit
git diff --stagedStaging area vs último commit
git diff HEADWorking directory + staging vs último commit
git diff <commit1> <commit2>Entre 2 commits concretos
git diff <branche1> <branche2>Entre 2 ramas

Volver a la tabla de contenidos

4. Lectura rápida

Formato típico:

diff --git a/app.py b/app.py
index abc123..def456 100644
--- a/app.py          # Archivo antiguo
+++ b/app.py          # Archivo nuevo
@@ -1 +1 @@           # Posición de los cambios
-print('Version 1')   # Línea eliminada (rojo)
+print('Version 2')   # Línea añadida (verde)

Lectura exprés:

  • --- y +++ = archivos comparados
  • - = eliminado (rojo en el terminal)
  • + = añadido (verde en el terminal)

Volver a la tabla de contenidos

5. Comandos prácticos

ComandoUtilidad
git diff --name-onlySolo los nombres de los archivos modificados
git diff --statEstadísticas de los cambios
git diff --word-diffDiferencias a nivel de palabras
git diff HEAD~1 HEADÚltimo commit vs el anterior

Diff = tu detector de cambios. ¡Úsalo SIEMPRE!

Volver a la tabla de contenidos