diffoscope

In-depth comparison of files, archives, and directories.


diffoscope tries to get to the bottom of what makes files or directories different. It will recursively unpack archives of many kinds and transform various binary formats into more human-readable form to compare them. It can compare two tarballs, ISO images, or PDF just as easily.

Latest release: 297 (30 May 2025)


You can try it now using Docker:

echo foo > file1
echo bar > file2
docker run --rm -t -w $(pwd) -v $(pwd):$(pwd):ro \
      registry.salsa.debian.org/reproducible-builds/diffoscope file1 file2

… or try it on try.diffoscope.org!

News

Image for: News

(RSS)

Examples

Image for: Examples

Firefox extensions compared (HTML output)

Debian packages compared (text output)

… and more examples on tests.reproducible-builds.org. You can also view an demonstration interactive shell session (220K).

Features

Image for: Features

Get diffoscope

Image for: Get diffoscope

Contribute

Image for: Contribute

diffoscope is developed within the “Reproducible builds” effort.

Extending diffoscope to support new formats is quite straightforward in most cases. It also has a comprehensive test suite. Patches welcome!

Similar software

Image for: Similar software

License

Image for: License

diffoscope is free software licensed under the GNU General Public License version 3 or later.

Contributors

Image for: Contributors

Akihiro Suda, Alexis Murzeau, Alyssa Ross, anthraxx, Balint Reczey, Baptiste Daroussin, Ben Hutchings, Benjamin Peterson, beuc@beuc.net, Brandon Maier, Brent Spillner, Brett Smith, Ceridwen, Chris Lamb, Christopher Baines, Clemens Lang, Conrad Ratschan, Daniel Fullmer, Daniel Kahn Gillmor, Daniel Shahaf, Dhole, Dimitrios Apostolou, Ed Maste, Efraim Flashner, Eli Schwartz, Emanuel Bronshtein, Esa Peuha, FC (Fay) Stegerman, Felix Yan, Frazer Clews, fridtjof, Gianfranco Costamagna, Graham Christensen, Greg Chabala, Guangyuan Yang, Hans-Christoph Steiner, Helmut Grohne, Holger Levsen, HW42, Ivan Trubach, James Addison, James Clarke, Jean-Romain Garnier, Jelle van der Waa, Jelmer Vernooij, Joachim Breitner, Juliana Oliveira, Jérémy Bobbio, Keith Smiley, klemens, Marc Herbert, Marek Marczykowski-Górecki, Maria Glukhova, Marius Gedminas, Martin Abente Lahaye, Mattia Rizzolo, Michael Osipov, Michel Messerschmidt, Mike Hommey, Mike McQuaid, Milena Boselli Rosa, Omair Majid, Paul Gevers, Paul Spooren, Paul Wise, Peter De Wachter, Rainer Müller, Reiner Herrmann, Ricardo Gaviria, Roland Clobus, Sam James, Santiago Torres Arias, Santiago Torres-Arias, Satyam Zode, Sergei Trofimovich, Seth Michael Larson, Vagrant Cascadian, Vekhir, Vibhu, Will Hollywood, Will Thompson, Xavier Briand, Ximin Luo, Yasushi SHOJI, Zachary T Welch, and Zbigniew Jędrzejewski-Szmek.