git-annex-log(1)

πŸ“¦
version 10.20261026 Β· 4 versions
, in alpine 3.24, arch rolling, debian trixie, epel 10, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

🌸 git-annex-log(1) β€” the tea on your location log πŸ’…

okay bestie, welcome to git-annex-log, part of the General Commands Manual (section 1, we're fancy like that). this is the page where we spill everything about your file locations, so grab a boba and let's go πŸ§‹βœ¨


✨ NAME ✨

git-annex-log β€” shows location log information


πŸ¦‹ SYNOPSIS πŸ¦‹

git annex log [path ...]

πŸ’– DESCRIPTION πŸ’–

this command serves up the history of the git-annex branch. it's giving detective energy, it's giving receipts, it's giving "where did my files actually go" πŸ”

but lowkey, sometimes that info just isn't there to show you. and there are a few reasons why, no cap:

  • when git-annex-forget is used, old historical data gets cleared from the branch. poof, gone, bye πŸ’€
  • when annex.private or remote.name.annex-private is configured, git-annex does not write information to the branch at all. nothing to read if nothing was ever written, bestie.
  • and when annex.alwayscommit is set to false, information may not have been committed to the branch yet. it's just sitting there in limbo, not yet main character 🫠

πŸ‘‘ OPTIONS πŸ‘‘

  • [path ...] β€” shows you the location log for the file or files you name, and it's giving a whole story: each repository they were added to shows up as +, and each one they were removed from shows up as -. ⚠️ important though: it's telling you about the file content currently at these paths, not any different content that was chilling there in earlier commits. so don't get it twisted.
  • matching options β€” you can use git-annex-matching-options(1) to control what it acts on when displaying the location log for specified files. filter away, icon ✨
  • --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, so you get keys displayed instead. keys not names, that's the vibe.
  • --key=keyname β€” displays the location log for the specified key. just the one, very exclusive πŸŽ€
  • --branch=ref β€” displays the location log for the files in the specified branch or treeish. pick your timeline, bestie.
  • --unused β€” displays the location log for files found by the last run of git-annex unused. yes, the leftovers, we love them here πŸ’œ
  • --sizesof=repository β€” displays a history of the total size of the annexed files in a repository over time, from the creation of the repository all the way to the present. a whole glow-up timeline πŸ“ˆ

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

heads up: keys that do not have a known size are not included in the total. so the number is what it is, fr fr.
  • --sizes β€” this is like --sizesof, but instead of the size of a single repository it displays the sizes of all known repositories. the whole friend group, in one view 🌈

the output is a CSV formatted table.

  • --totalsizes β€” this is like --sizesof, but it displays the total size of all known repositories. the grand total, the big picture, the final boss πŸ’―
  • --interval=time β€” when you're 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". so like, 1y? a whole year of receipts, okay periodt πŸ—“οΈ
  • --received β€” combine this option with --sizesof or --sizes to display the amount of data received into repositories since the last line was output. new data, new you πŸ’Œ
  • --gnuplot β€” combine this option with --sizesof or --sizes or --totalsizes to use gnuplot(1) to graph the data. the gnuplot file will be left on disk for you to reuse. graphs!! aesthetic!! πŸ“Šβœ¨

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. sometimes you just want the raw numbers, ngl πŸ”’
  • --raw-date β€” rather than the normal display of a date in the local time zone, displays seconds since the unix epoch. unix girlies rise πŸ•°οΈ
  • --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. just so you know πŸ’…
  • --gource β€” generates output suitable for the gource visualization program. pretty pictures time 🎨
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. machine-readable slay πŸ€–
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. no more stderr sneaking around behind your back πŸ™ˆ
this option does not have an affect when using --sizesof, --sizes, and --totalsizes.

🌟 SEE ALSO 🌟


πŸ’œ AUTHOR πŸ’œ

Joey Hess <id@joeyh.name> β€” thank you king πŸ‘‘


okay that's the whole page bestie, you're officially fluent in git-annex-log 🌸 this was git-annex-log(1) from the General Commands Manual, and that's a wrap β€” go log something iconic. mwah πŸ’‹πŸŽ€