---
name: "git-annex-log"
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-log"
---

# git-annex-log(1)

shows location log information

## NAME

git-annex-log - shows location log information

## SYNOPSIS

git annex log **\[path ...\]**

## DESCRIPTION

This command displays information from the history of the git-annex branch.

Several things can prevent that information being available to display. When git-annex-forget is used, old historical data gets cleared from the branch. When annex.private or remote.name.annex-private is configured, git-annex does not write information to the branch at all. And when annex.alwayscommit is set to false, information may not have been committed to the branch yet.

## OPTIONS

- **\[path ...\]**

  -

  Displays the location log for the specified file or files, showing each repository they were added to ("+") and removed from ("-"). Note that it displays information about the file content currently at these paths, not for any different content that was there in earlier commits.

-

  - matching options

  The [git-annex-matching-options(1)](/git-annex-matching-options/1.md) can be used to control what to act on when displaying the location log for specified files.

-

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

  Shows location log changes to all content, with the most recent changes first. In this mode, the names of files are not available and keys are displayed instead.

-

  - **--key=keyname**

  Displays the location log for the specified key.

-

  - **--branch=ref**

  Displays the location log for the files in the specified branch or treeish.

-

  - **--unused**

  Displays the location log for files found by last run of git-annex unused.

-

  - **--sizesof=repository**

  Displays a history of the total size of the annexed files in a repository over time from the creation of the repository to the present.

-

  The repository can be "here" for the current repository, or the name of a remote, or a repository description or uuid.

-

  Note that keys that do not have a known size are not included in the total.

-

  - **--sizes**

  This is like --sizesof, but rather than display the size of a single repository, it displays the sizes of all known repositories.

-

  The output is a CSV formatted table.

-

  - **--totalsizes**

  This is like **--sizesof**, but it displays the total size of all known repositories.

-

  - **--interval=time**

  When using **--sizesof**, **--sizes**, and **--totalsizes**, this  controls the minimum interval between displays of the size. The default is to display each new recorded size.

-

  The time is of the form "30d" or "1y".

-

  - **--received**

  Combine this option with **--sizesof** or **--sizes** to display the amount of data received into repositories since the last line was output.

-

  - **--gnuplot**

  Combine this option with **--sizesof** or **--sizes** or **--totalsizes** to use [gnuplot(1)](/gnuplot/1.md) to graph the data. The gnuplot file will be left on disk for you to reuse.

-

  For example, to graph the sizes of all repositories:

-

  git-annex log --sizes --interval=1d --gnuplot

-

  To graph the amount of new data received into each repository every 30 days:

-

  git-annex log --sizes --interval=30d --gnuplot --recieved

-

  - **--bytes**

  Show sizes in bytes, disabling the default nicer units.

-

  - **--raw-date**

  Rather than the normal display of a date in the local time zone, displays seconds since the unix epoch.

-

  - **--since=date**, **--after=date**, **--until=date**, **--before=date**, **--max-count=N**

  These options are passed through to **git log**, and can be used to limit how far back to search for location log changes.

-

  For example: **--since "1 month ago"**

-

  These options do not have an affect when using **--sizesof**, **--sizes**,  and **--totalsizes**.

-

  - **--gource**

  Generates output suitable for the **gource** visualization program.

-

  This option does not have an affect when using **--sizesof**, **--sizes**,  and **--totalsizes**.

-

  - **--json**

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

-

  This option does not have an affect when using **--sizesof**, **--sizes**,  and **--totalsizes**.

-

  - **--json-error-messages**

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

-

  This option does not have an affect when using **--sizesof**, **--sizes**,  and **--totalsizes**.

-

  - 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-forget(1)](/git-annex-forget/1.md)

## AUTHOR

Joey Hess \<id@joeyh.name\>
