diff

La utilidad diff fue desarrollada a comienzos de los años setenta en el sistema operativo Unix que estaba creándose en AT&T Bell Labs en Murray Hill, Nueva Jersey.

La versión final, que apareció por primera vez con la 5.ª edición de Unix en 1974, fue toda ella escrita por Douglas McIlroy.

Las heurísticas utilizadas en estas primeras aplicaciones fueron, sin embargo, juzgadas como no fiables.

Su análisis del problema lo llevó a cabo con la colaboración de distintas personas de Bell Labs como Alfred Aho, Elliot Pinson, Jeffrey Ullman y Harold S. Stone.

Esto reducía enormemente el necesario almacenamiento secundario para mantener las distintas versiones de un archivo.

En 1985, Larry Wall compuso una utilidadh, patch, que generalizó y extendió la habilidad para modificar archivos con resultado diff.

Los paréntesis angulares aparecen al comienzo de las líneas que son añadidas, borradas o cambiadas.

El algoritmo básico se describe en el artículo An O(ND) Difference Algorithm and its Variations de Eugene W. Myers[4]​ y en A File Comparison Program de Webb Miller and Myers.

[5]​ El algoritmo fue descubierto independientemente y descrito en Algorithms for Approximate String Matching, de E.

En los años ochenta, la ayuda para los archivos binarios dio lugar a un cambio en el diseño y la implementación de la aplicación.

Diff sin cambiar (izquierda) - Diff con los respectivos cambios (derecha) - Tkdiff.