Skip to main content

Diff two directories recursively

Project description

difftree

difftree is a tool that diffs two directories. It recursively walks through the directories and lists files that are missing on either side.

By default difftree only checks whether a file is present or not, so files present on both sides but with different file sizes, permissions or content will not be listed. However, checking any of those can be enabled via the -s, -p, and -z flags respectively.

Usage

> difftree dir-a/ dir-b/
dir-a/                 <-> dir-b/
                       <-  file-only-in-dirb.txt
file-only-in-dir-a.txt  ->

The following options are available:

  -h, --help            show this help message and exit
  -p, --check-perms     Diff file permissions
  -s, --check-sizes     Diff file sizes
  -z, --check-hashes    Diff file hashes
  -d, --dir-norecurse   Show missing directories as a single entry (don't show files in the directory)
  -e exclude_regex, --exclude exclude_regex
                        Exclude files matching this regex

Install

The recommended way to install difftree is via pipx:

pipx difftree

Alternatives

UNIX built-in diff -rq dir1 dir2 works quite well.

rsync --dry-run -r --itemize-changes dir1 dir2 also works quite well, but doesn't list files that are present in dir2 but missing in dir1. It requires you to parse the quite terse change format e.g. >fcsT.... and >f+++++++.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

difftree-0.1.1.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

difftree-0.1.1-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file difftree-0.1.1.tar.gz.

File metadata

  • Download URL: difftree-0.1.1.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.10.1 Darwin/21.3.0

File hashes

Hashes for difftree-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c1e94b7736f5f9310b4a35bb4bec85272e821e6da790df2967d9566b30fae656
MD5 6476ecd8bb602ae4461d3ba6a58c7c6e
BLAKE2b-256 a2242103bf4c70f21e32b8cca8c3287e7add0f27276324d260aed4cbd2bfc6cd

See more details on using hashes here.

File details

Details for the file difftree-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: difftree-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.12 CPython/3.10.1 Darwin/21.3.0

File hashes

Hashes for difftree-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 49aacf6b4b49ac973fb21d0407d845c34e64984bb02f29d300b78ce3828867ee
MD5 1068e49bdf1b097af23d614524226312
BLAKE2b-256 5aac24e2edc24c424d18476ee2c257c906bb35b4ca84a9eee8be41b6ef0633bd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page