dwww Home | Manual pages | Find package

BORG-DIFF(1)                   borg backup tool                   BORG-DIFF(1)

NAME
       borg-diff - Diff contents of two archives

SYNOPSIS
       borg [common options] diff [options] REPO::ARCHIVE1 ARCHIVE2 [PATH...]

DESCRIPTION
       This command finds differences (file contents, user/group/mode) between
       archives.

       A repository location  and  an  archive  name  must  be  specified  for
       REPO::ARCHIVE1.   ARCHIVE2 is just another archive name in same reposi-
       tory (no repository location allowed).

       For archives created with Borg 1.1 or newer diff automatically  detects
       whether  the  archives are created with the same chunker params. If so,
       only chunk IDs are compared, which is very fast.

       For archives prior to Borg 1.1 chunk contents are compared by  default.
       If  you did not create the archives with different chunker params, pass
       --same-chunker-params.  Note that the chunker params changed from  Borg
       0.xx to 1.0.

       For  more  help on include/exclude patterns, see the borg_patterns com-
       mand output.

OPTIONS
       See borg-common(1) for common options of Borg commands.

   arguments
       REPO::ARCHIVE1
              repository location and ARCHIVE1 name

       ARCHIVE2
              ARCHIVE2 name (no repository location allowed)

       PATH   paths of items inside the archives to compare; patterns are sup-
              ported

   options
       --numeric-owner
              deprecated, use --numeric-ids instead

       --numeric-ids
              only consider numeric user and group identifiers

       --same-chunker-params
              Override check of chunker parameters.

       --sort Sort the output lines by file path.

       --content-only
              Only  compare  differences  in content (exclude metadata differ-
              ences)

       --json-lines
              Format output as JSON Lines.

   Exclusion options
       -e PATTERN, --exclude PATTERN
              exclude paths matching PATTERN

       --exclude-from EXCLUDEFILE
              read exclude patterns from EXCLUDEFILE, one per line

       --pattern PATTERN
              include/exclude paths matching PATTERN

       --patterns-from PATTERNFILE
              read include/exclude patterns from PATTERNFILE, one per line

EXAMPLES
          $ borg init -e=none testrepo
          $ mkdir testdir
          $ cd testdir
          $ echo asdf > file1
          $ dd if=/dev/urandom bs=1M count=4 > file2
          $ touch file3
          $ borg create ../testrepo::archive1 .

          $ chmod a+x file1
          $ echo "something" >> file2
          $ borg create ../testrepo::archive2 .

          $ echo "testing 123" >> file1
          $ rm file3
          $ touch file4
          $ borg create ../testrepo::archive3 .

          $ cd ..
          $ borg diff testrepo::archive1 archive2
          [-rw-r--r-- -> -rwxr-xr-x] file1
             +135 B    -252 B file2

          $ borg diff testrepo::archive2 archive3
              +17 B      -5 B file1
          added           0 B file4
          removed         0 B file3

          $ borg diff testrepo::archive1 archive3
              +17 B      -5 B [-rw-r--r-- -> -rwxr-xr-x] file1
             +135 B    -252 B file2
          added           0 B file4
          removed         0 B file3

          $ borg diff --json-lines testrepo::archive1 archive3
          {"path": "file1", "changes": [{"type": "modified", "added": 17, "removed": 5}, {"type": "mode", "old_mode": "-rw-r--r--", "new_mode": "-rwxr-xr-x"}]}
          {"path": "file2", "changes": [{"type": "modified", "added": 135, "removed": 252}]}
          {"path": "file4", "changes": [{"type": "added", "size": 0}]}
          {"path": "file3", "changes": [{"type": "removed", "size": 0}]

SEE ALSO
       borg-common(1)

AUTHOR
       The Borg Collective

                                  2023-03-22                      BORG-DIFF(1)

Generated by dwww version 1.15 on Sat Jun 29 02:14:34 CEST 2024.