git-annex-fsck(1)           General Commands Manual          git-annex-fsck(1)

       git-annex-fsck - find and fix problems

       git annex fsck [path ...]

       With no parameters, this command checks the whole annex for
       consistency, and warns about or fixes any problems found. This is a
       good complement to git fsck.

       With parameters, only the specified files are checked.


              Check a remote, rather than the local repository.

              Note that by default, files will be copied from the remote to
              check their contents. To avoid this expensive transfer, and only
              verify that the remote still has the files that are expected to
              be on it, add the --fast option.

       --fast Avoids expensive checksum calculations (and expensive transfers
              when fscking a remote).

              Start a new incremental fsck pass. An incremental fsck can be
              interrupted at any time, with eg ctrl-c.

       --more Resume the last incremental fsck pass, where it left off.

              Resuming may redundantly check some files that were checked
              before. Any files that fsck found problems with before will be
              re-checked on resume. Also, checkpoints are made every 1000
              files or every 5 minutes during a fsck, and it resumes from the
              last checkpoint.

              This makes a new incremental fsck be started only a specified
              time period after the last incremental fsck was started.

              The time is in the form "10d" or "300h".

              Maybe you'd like to run a fsck for 5 hours at night, picking up
              each night where it left off. You'd like this to continue until
              all files have been fscked. And once it's done, you'd like a new
              fsck pass to start, but no more often than once a month. Then
              put this in a nightly cron job:

               git annex fsck --incremental-schedule 30d --time-limit 5h

              Override the normally configured number of copies.

              To verify data integrity only while disregarding required number
              of copies, use --numcopies=1.

       --all -A
              Normally only the files in the currently checked out branch are
              fscked. This option causes all versions of all files to be

              This is the default behavior when running git-annex in a bare

              Operate on files in the specified branch or treeish.

              Operate on files found by last run of git-annex unused.

              Use this option to fsck a specified key.

       file matching options
              The git-annex-matching-options(1) can be used to specify files
              to fsck.

       --jobs=N -JN
              Runs multiple fsck jobs in parallel. For example: -J4

       --json Enable JSON output. This is intended to be parsed by programs
              that use git-annex. Each line of output is a JSON object.

              Messages that would normally be output to standard error are
              included in the json instead.




       Joey Hess <>