Saltar al contenido

diff · + añadido · − eliminado

Comparar textos

Comparar «red, green, blue» con «red, yellow, blue» línea por línea da 1 línea añadida, 1 línea eliminada y 2 sin cambios. Pega dos textos para ver cada diferencia.

Cada línea añadida se marca con + y cada línea eliminada con −, además de ir en color, y los caracteres cambiados dentro de una línea sustituida se resaltan. Los textos pequeños se comparan mientras escribes; el texto nunca sale de esta pestaña.

Scanned by NortonTM Safe Web

De un vistazo

Precio
Sin coste
Cuenta
No hace falta
Subida
No aplica: los dos textos se quedan en tu pestaña
Método
Subsecuencia común más larga de líneas, con los caracteres cambiados resaltados
Salida
Líneas coloreadas y marcadas, o un diff unificado con 3 líneas de contexto
Límite de tamaño
5,000 líneas y 5,000,000 de caracteres por texto

Una comparación resuelta y el efecto de las opciones

Las tablas salen del mismo código que la herramienta. La primera compara dos textos de tres líneas; la segunda muestra cómo las opciones cambian el resultado para un par de líneas.

«red, green, blue» frente a «red, yellow, blue», uno por línea
MarcaLínea
=red
−green
+yellow
=blue
«Hello World» frente a «hello world» (dos espacios)
AjusteLíneas añadidasLíneas eliminadas
Exacto11
Ignorar mayúsculas11
Ignorar espacios11
Ignorar mayúsculas y espacios00

Cómo comparar dos textos

1

Pega los dos textos

Pon el texto más antiguo en el cuadro Original y el más reciente en el cuadro Modificado. Ya hay dos ejemplos cortos. Intercambiar cambia de sitio los dos cuadros y Borrar vacía ambos.

2

Elige qué cuenta como diferencia

Marca Ignorar mayúsculas para tratar «Hello» y «hello» como la misma línea, e Ignorar espacios para ignorar los espacios al final de una línea y los espacios repetidos dentro de ella. Mostrar solo los cambios oculta las líneas sin cambios y deja 3 líneas alrededor de cada cambio.

3

Lee o copia la diferencia

Las líneas marcadas con − existen solo en el Original, y las marcadas con + solo en el texto Modificado. Copia el diff unificado para pegarlo en un mensaje o en un parche, o descárgalo como archivo .diff.

Cómo funciona la comparación

Los dos textos se dividen en líneas y la herramienta halla la subsecuencia común más larga de líneas: el mayor conjunto de líneas que aparecen en ambos textos en el mismo orden. Toda línea fuera de ese conjunto se informa como eliminada (solo en el original) o añadida (solo en el texto modificado), de modo que el diff tiene el menor número posible de líneas cambiadas. Cuando una línea eliminada va seguida directamente de una añadida, se resaltan los caracteres que difieren entre las dos.

Un diff trabaja con líneas porque las líneas son la unidad en la que cambian el código, los archivos de configuración y las listas, y una comparación por líneas sigue siendo rápida con miles de líneas. Una línea que se movió aparece una vez como eliminada y otra como añadida; una palabra cambiada aparece como una línea sustituida, con los caracteres resaltados. Los finales de línea se normalizan, así que un archivo guardado con saltos de línea de Windows coincide con el mismo archivo guardado con saltos de línea de Unix. Cada texto puede tener hasta 5,000 líneas y 5,000,000 de caracteres. La salida del diff unificado usa el formato habitual: una cabecera --- y +++, y luego bloques @@ con 3 líneas de contexto.

Preguntas sobre comparar textos

¿Cómo decide un diff de texto qué ha cambiado?

Halla la subsecuencia común más larga de líneas, es decir, el mayor número de líneas que ambos textos comparten en el mismo orden. Las líneas fuera de ella se marcan con − si solo las tiene el original y con + si solo las tiene el texto modificado. «red, green, blue» frente a «red, yellow, blue» conserva red y blue, elimina green y añade yellow.

¿Por qué la comparación trabaja con líneas y no con palabras?

Las líneas son la forma en que se organizan el código, los registros, las listas y los archivos de configuración, y un resultado por líneas es lo bastante corto para leerlo. En una línea sustituida, los caracteres que difieren se resaltan dentro de ella, así que un cambio de una palabra en una frase larga es fácil de ver.

¿Qué significan los colores y los signos + y −?

Una línea verde marcada con + se añadió en el texto Modificado. Una línea roja marcada con − se eliminó del Original. Las líneas sin marca son iguales en ambos. Los signos se imprimen además de los colores, así que el resultado se lee sin distinguir el rojo del verde.

¿Cómo ignoro las diferencias de mayúsculas o de espacios?

Marca Ignorar mayúsculas para comparar líneas sin tener en cuenta las mayúsculas, e Ignorar espacios para ignorar los espacios al principio y al final de una línea y tratar cualquier serie de espacios dentro de ella como un solo espacio. Con ambas marcadas, «Hello World» y «hello world» son la misma línea.

¿Qué tamaño pueden tener los dos textos?

Cada texto puede tener hasta 5,000 líneas y 5,000,000 de caracteres. Un texto de 5,000 líneas comparado con una copia reordenada de sí mismo se procesa en bastante menos de un segundo en un ordenador actual. Por encima de 100,000 caracteres en total, la comparación empieza al pulsar Comparar en lugar de mientras escribes.

¿Qué es un diff unificado?

Es el formato de texto que usan diff y Git. Empieza con una línea --- y otra +++ que nombran los dos textos, y luego un bloque por cada grupo de cambios. Un bloque empieza con una cabecera como @@ -1,3 +1,3 @@, que significa 3 líneas desde la línea 1 del original y 3 líneas desde la línea 1 del texto modificado, y cada línea empieza con un espacio, + o −.