# NAME

git-annex-common-options - options supported by many git-annex commands

# DESCRIPTION

These common options are accepted by many git-annex commands, and
may not be explicitly listed on their individual man pages.
Most of these options are accepted by all git-annex commands.
(Many commands also accept the [[git-annex-matching-options]](1).)

# OPTIONS

* `--force`

  Force unsafe actions, such as dropping a file's content when no other
  source of it can be verified to still exist, or adding ignored files.
  Use with care.

* `--fast`

  Avoid some expensive operations normally performed by a command.
  What is avoided depends on the command, see individual command's man
  pages for details.

* `--quiet`

  Avoid the default verbose display of what is done; only show errors.

* `--verbose`

  Enable verbose display. On by default but can be disabled by --quiet.

* `--explain`

  Display explanations of what git-annex takes into account when deciding
  what to do. The explanations will be inside square brackets.
  For example, "[foo is not present here]"

  This includes explanations of why preferred content expressions and
  other similar expressions like annex.largefiles match or fail to match.
  In these explanations, the expression is displayed, with each term
  followed by "[TRUE]" or "[FALSE]" to indicate the value.
  Irrelevant terms will be ommitted from the explanation, for example 
  `"exclude=* and copies=1"` will be displayed as `"exclude=*[FALSE]"`

* `--debug`

  Display debug messages to standard error.

* `--no-debug`

  Disable display of debug messages.

* `--debugfilter=name[,name..]`

  When debug message display has been enabled by `--debug`, this filters
  the debug messages that are displayed to ones coming from modules with
  the specified names.
  
  To find the names of modules, see the full debug output, which includes
  the module name, eg "(Utility.Process)"

  The full module name does not need to be
  specified when using this, a substring of the name will do.

  For example, `--debugfilter=Process,External` will display debugging
  output when git-annex runs processes, and when it communicates with
  external special remotes.

* `--numcopies=n`

  Overrides the numcopies setting.

* `--mincopies=n`

  Overrides the mincopies setting.

* `--time-limit=time`

  Limits how long a git-annex command runs. The time can be something
  like "5h", or "30m" or even "45s" or "10d".

  Note that git-annex may continue running for some time past the specified
  time limit, in order to finish processing files it started before the
  time limit was reached. That and a cleaner shutdown are the differences
  between using this option and a command like `timeout(1)`.

  When the time limit prevents git-annex from doing all it
  was asked to, it will exit with a special code, 101.

* `--size-limit=size`

  Limits the total size of annexed files that a git-annex command
  can process.

  The size can be specified with any commonly used units, for example,
  "50gb".

  In some cases, an annexed file's size is not known. This option will
  prevent git-annex from processing such files.

  When the size limit prevents git-annex from acting on any files,
  it will exit with a special code, 101.

* `--semitrust=repository`
* `--untrust=repository`

  Overrides trust settings for a repository. May be specified more than once.

  The repository should be specified using the name of a configured remote,
  or the UUID or description of a repository.

* `--trust=repository`

  This used to override trust settings for a repository, but now will
  not do so, because trusting a repository can lead to data loss,
  and data loss is now only enabled when using the `--force` option.

* `--trust-glacier`

  This used to override trust settings for Glacier special remotes,
  but now will not do so, because it could lead to data loss,
  and data loss is now only enabled when using the `--force` option.

* `--user-agent=value`

  Overrides the User-Agent to use when downloading files from the web.

* `--notify-finish`

  Caused a desktop notification to be displayed after each successful
  file download and upload.

  (Only supported on some platforms, e.g. Linux with dbus. A no-op when
  not supported.)

* `--notify-start`

  Caused a desktop notification to be displayed when a file upload
  or download has started, or when a file is dropped.

* `-c name=value`

  Overrides git configuration settings. May be specified multiple times.

# SEE ALSO

[[git-annex]](1)

# AUTHOR

Joey Hess <id@joeyh.name>

Warning: Automatically converted into a man page by mdwn2man. Edit with care.
