Diff de texto/ Línea por línea

Resalta diferencias línea por línea entre dos textos. Soporta código y texto plano con líneas de contexto configurables. Completamente local.

OriginalA
ModificadoB
Contexto
Diff

Pega el texto en ambos paneles superiores.

¿Esta herramienta resolvió tu problema?

Qué es una herramienta de diff de texto

Una herramienta de diff de texto usa el algoritmo LCS (subsecuencia común más larga) para comparar dos textos línea por línea, identificando adiciones, eliminaciones y modificaciones.

Casos de uso comunes de herramientas diff

Revisión de código: comparar cambios de código. Gestión de configuración: comparar configuraciones entre entornos. Colaboración en documentos: ver historial de edición. Migración de datos: verificar la precisión de la transformación.

Ejemplos de código

JavaScript (jsdiff)
import { diffLines } from 'diff';

const a = 'foo\nbar\nbaz';
const b = 'foo\nqux\nbaz';

diffLines(a, b).forEach(part => {
  const sign = part.added ? '+' :
               part.removed ? '-' : ' ';
  process.stdout.write(sign + part.value);
});
Python
import difflib

a = ['foo\n', 'bar\n', 'baz\n']
b = ['foo\n', 'qux\n', 'baz\n']

# Unified diff (like git diff)
diff = difflib.unified_diff(
    a, b,
    fromfile='original',
    tofile='modified',
    n=3,  # context lines
)
print(''.join(diff))
Go
// github.com/sergi/go-diff
import (
  dmp "github.com/sergi/go-diff/
       diffmatchpatch"
)

d := dmp.New()
diffs := d.DiffMain(textA, textB, false)
patch := d.PatchMake(textA, diffs)
fmt.Println(d.PatchToText(patch))
Shell / CLI
# Unified diff with 3 context lines
diff -U 3 original.txt modified.txt

# Git-style diff (no git repo needed)
git diff --no-index \
  original.txt modified.txt

# Side-by-side view
diff --side-by-side \
  original.txt modified.txt

Preguntas frecuentes

¿Cómo funciona el algoritmo diff?
La herramienta usa el algoritmo LCS (subsecuencia común más larga) para comparar textos línea por línea, encontrando el conjunto mínimo de adiciones y eliminaciones — similar al algoritmo usado por git diff.
¿Qué hacen las líneas de contexto?
Las líneas de contexto controlan cuántas líneas sin cambios se muestran alrededor de cada sección modificada. 0 muestra solo líneas modificadas; 3 muestra 3 líneas antes y después de cada cambio; 'Todo' muestra el texto completo.
¿Qué tipos de texto se admiten?
Se admite cualquier texto plano, incluyendo código (JavaScript, Python, Go, etc.), archivos de configuración (JSON, YAML, TOML), documentos Markdown y archivos de registro.
¿Mi contenido se envía a algún servidor?
No. Todo el procesamiento ocurre completamente en el navegador. Tu contenido nunca abandona tu dispositivo, haciendo segura la comparación de código sensible.
¿Cómo copio la salida diff?
Haz clic en el botón 'Copiar' en la esquina superior derecha del panel diff para copiar el texto diff unificado al portapapeles.
¿Qué hace el botón Intercambiar?
Intercambiar A↔B intercambia los paneles Original y Modificado, permitiendo ver el diff desde la dirección opuesta.