---
name: "git-annex-satisfy"
section: "1"
platform: "linux"
package: "git-annex"
version: "10.20261026-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/git-annex-satisfy"
---

# git-annex-satisfy(1)

transfer and drop content as configured

## NAME

git-annex-satisfy - transfer and drop content as configured

## SYNOPSIS

git annex satisfy **\[remote ...\]**

## DESCRIPTION

This transfers and drops content of annexed files to work toward satisfying the preferred content settings of the local repository and remotes.

It does the same thing as **git-annex sync --content** without the pulling and pushing of git repositories, and without changing the trees that are imported to or exported from special remotes.

Note that it (like git-annex-sync or git-annex-assist) does not work specifically towards satisfying the git-annex-numcopies setting, unless the preferred content setting of the local repository is written to do so by using eg **approxlackingcopies=1**.

## OPTIONS

- **\[remote\]**

  -

  By default this command operates on all remotes, except for remotes that have **remote.\<name\>.annex-sync** set to false.

-

  By specifying the names of remotes (or remote groups), you can control which ones to operate on.

-

  - **--content-of=path** **-C path**

  Operate on only files in the specified path. The default is to operate on all files in the working tree.

-

  This option can be repeated multiple times with different paths.

-

  Note that this option does not prevent exporting other files to an  "exporttree=yes" remote.

-

  - **--jobs=N** **-JN**

  Enables parallel processing with up to the specified number of jobs running at once. For example: **-J10**

-

  Setting this to "cpus" will run one job per CPU core.

-

  - **--all** **-A**

  Usually this command operates on annexed files in the current branch. This option makes it operate on all available versions of all annexed files (when preferred content settings allow).

-

  Note that preferred content settings that use **include=** or **exclude=** will only match the version of files currently in the work tree, but not past versions of files.

-

  - Also the [git-annex-common-options(1)](/git-annex-common-options/1.md) can be used.

  ## SEE ALSO

[git-annex(1)](/git-annex/1.md)

[git-annex-sync(1)](/git-annex-sync/1.md)

[git-annex-preferred-content(1)](/git-annex-preferred-content/1.md)

## AUTHOR

Joey Hess \<id@joeyh.name\>
