|
@@ -12,39 +12,43 @@ borg diff
|
|
|
|
|
|
.. class:: borg-options-table
|
|
|
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | **positional arguments** |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | | ``ARCHIVE1`` | ARCHIVE1 name |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | | ``ARCHIVE2`` | ARCHIVE2 name |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | | ``PATH`` | paths of items inside the archives to compare; patterns are supported |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | **options** |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | | ``--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. |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | | ``--json-lines`` | Format output as JSON Lines. |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | .. class:: borg-common-opt-ref |
|
|
|
- | |
|
|
|
- | :ref:`common_options` |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
- | **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 |
|
|
|
- +-------------------------------------------------------+---------------------------------------+-----------------------------------------------------------------------+
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | **positional arguments** |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | | ``ARCHIVE1`` | ARCHIVE1 name |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | | ``ARCHIVE2`` | ARCHIVE2 name |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | | ``PATH`` | paths of items inside the archives to compare; patterns are supported |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | **options** |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | | ``--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. |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | | ``--format FORMAT`` | specify format for differences between archives (default: "{change} {path}{NL}") |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | | ``--json-lines`` | Format output as JSON Lines. |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | | ``--content-only`` | Only compare differences in content (exclude metadata differences) |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | .. class:: borg-common-opt-ref |
|
|
|
+ | |
|
|
|
+ | :ref:`common_options` |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
+ | **Include/Exclude 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 |
|
|
|
+ +-------------------------------------------------------+---------------------------------------+----------------------------------------------------------------------------------+
|
|
|
|
|
|
.. raw:: html
|
|
|
|
|
@@ -68,13 +72,15 @@ borg diff
|
|
|
--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.
|
|
|
+ --format FORMAT specify format for differences between archives (default: "{change} {path}{NL}")
|
|
|
--json-lines Format output as JSON Lines.
|
|
|
+ --content-only Only compare differences in content (exclude metadata differences)
|
|
|
|
|
|
|
|
|
:ref:`common_options`
|
|
|
|
|
|
|
|
|
|
- Exclusion options
|
|
|
+ Include/Exclude 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
|
|
@@ -84,19 +90,61 @@ borg diff
|
|
|
Description
|
|
|
~~~~~~~~~~~
|
|
|
|
|
|
-This command finds differences (file contents, user/group/mode) between archives.
|
|
|
+This command finds differences (file contents, metadata) between ARCHIVE1 and ARCHIVE2.
|
|
|
|
|
|
-A repository location and an archive name must be specified for REPO::ARCHIVE1.
|
|
|
-ARCHIVE2 is just another archive name in same repository (no repository location
|
|
|
-allowed).
|
|
|
+For more help on include/exclude patterns, see the :ref:`borg_patterns` command output.
|
|
|
|
|
|
-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.
|
|
|
+.. man NOTES
|
|
|
|
|
|
-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.
|
|
|
+The FORMAT specifier syntax
|
|
|
++++++++++++++++++++++++++++
|
|
|
|
|
|
-For more help on include/exclude patterns, see the :ref:`borg_patterns` command output.
|
|
|
+The ``--format`` option uses python's `format string syntax
|
|
|
+<https://docs.python.org/3.9/library/string.html#formatstrings>`_.
|
|
|
+
|
|
|
+Examples:
|
|
|
+::
|
|
|
+
|
|
|
+ $ borg diff --format '{content:30} {path}{NL}' ArchiveFoo ArchiveBar
|
|
|
+ modified: +4.1 kB -1.0 kB file-diff
|
|
|
+ ...
|
|
|
+
|
|
|
+ # {VAR:<NUMBER} - pad to NUMBER columns left-aligned.
|
|
|
+ # {VAR:>NUMBER} - pad to NUMBER columns right-aligned.
|
|
|
+ $ borg diff --format '{content:>30} {path}{NL}' ArchiveFoo ArchiveBar
|
|
|
+ modified: +4.1 kB -1.0 kB file-diff
|
|
|
+ ...
|
|
|
+
|
|
|
+The following keys are always available:
|
|
|
+
|
|
|
+- NEWLINE: OS dependent line separator
|
|
|
+- NL: alias of NEWLINE
|
|
|
+- NUL: NUL character for creating print0 / xargs -0 like output
|
|
|
+- SPACE: space character
|
|
|
+- TAB: tab character
|
|
|
+- CR: carriage return character
|
|
|
+- LF: line feed character
|
|
|
+
|
|
|
+
|
|
|
+Keys available only when showing differences between archives:
|
|
|
+
|
|
|
+- path: archived file path
|
|
|
+- change: all available changes
|
|
|
+
|
|
|
+- content: file content change
|
|
|
+- mode: file mode change
|
|
|
+- type: file type change
|
|
|
+- owner: file owner (user/group) change
|
|
|
+- group: file group change
|
|
|
+- user: file user change
|
|
|
+
|
|
|
+- link: file link change
|
|
|
+- directory: file directory change
|
|
|
+- blkdev: file block device change
|
|
|
+- chrdev: file character device change
|
|
|
+- fifo: file fifo change
|
|
|
+
|
|
|
+- mtime: file modification time change
|
|
|
+- ctime: file change time change
|
|
|
+- isomtime: file modification time change (ISO 8601)
|
|
|
+- isoctime: file creation time change (ISO 8601)
|