Title: Port of the week: diffoscope | |
Author: Solène | |
Date: 20 March 2021 | |
Tags: openbsd | |
Description: | |
# Introduction | |
Today I will introduce you to Diffoscope, a command line software to | |
compare two directories. I find it very useful when looking for | |
changes between two extracted tarballs, I use it to compare changes | |
between two version of a program to see what changed. | |
Diffoscope project website | |
# How to install | |
On OpenBSD you can use "pkg_add diffoscope", on other systems you may | |
have a package for it, but it could be installed via pip too. | |
# Usage | |
It is really easy to use, as parameter give the two directories you | |
want to compare, diffoscope will then show the uid, gid, permissions, | |
modification/creation/access time changes between the two directories. | |
The output on a simple example looks like the following: | |
```diffoscope output | |
--- t/ | |
+++ a/ | |
│ --- t/foo | |
├── +++ a/foo | |
│ @@ -1 +1 @@ | |
│ -hello | |
│ +not hello | |
│ ├── stat {} | |
│ │ @@ -1 +1 @@ | |
│ │ -1043 492483 -rw-r--r-- 1 solene wheel 1973218 6 "Mar 20 18:31:08 2021"… | |
│ │ +1043 77762 -rw-r--r-- 1 solene wheel 314338 10 "Mar 20 18:31:08 2021" … | |
``` | |
Diffoscope has many flags, if you want to only compare the directories | |
content, you have to use "--exclude-directory-metadata yes". | |
Using the same example as previously with --exclude-directory-metadata | |
yes, it looks like: | |
```diffoscope output without directories metadata | |
--- t/ | |
+++ a/ | |
│ --- t/foo | |
├── +++ a/foo | |
│ @@ -1 +1 @@ | |
│ -hello | |
│ +not hello | |
``` |