implement maxsize log and command

* maxsize: New command to tell git-annex how large the expected maximum
  size of a repository is.
* vicfg: Include maxsize configuration.
This commit is contained in:
Joey Hess 2024-08-11 15:41:26 -04:00
parent d33ab4bbe4
commit 1265d7e5df
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
12 changed files with 119 additions and 6 deletions

View file

@ -6,14 +6,12 @@ git-annex maxsize - configure maximum size of a repository
git annex maxsize repository size
git annex maxsize here --auto
git annex maxsize repository
# DESCRIPTION
This configures the maximum combined size of annexed files that can be
stored in a repository. When run without a size or the --auto option,
stored in a repository. When run without a size,
it displays the currently configured maxsize.
The repository can be specified by git remote name or
@ -33,7 +31,11 @@ gigabyte, then it would make sense to run
# OPTIONS
* The [[git-annex-common-options]](1) can be used.
* `--bytes`
Displays the maximum size in bytes, disabling the default nicer units.
* The [[git-annex-common-options]](1) can also be used.
# SEE ALSO

View file

@ -333,6 +333,10 @@ content from the key-value store.
See [[git-annex-required]](1) for details.
* `maxsize repository [size]`
Get or set maximum size of repository.
* `initcluster`
Initializes a new cluster.

View file

@ -176,6 +176,16 @@ The file format is one line per group, starting with a timestamp, then a
space, then the group name followed by a space and then the preferred
content expression.
## `maxsize.log`
Records the maximum combined size of annexed files that can be stored in
a repository.
The file format is a timestamp, followed by the UUID of a repository,
followed by the size in bytes. For example:
1317929189.157237s e605dca6-446a-11e0-8b2a-002170d25c55 100000000000
## `export.log`
Tracks what trees have been exported to special remotes by

View file

@ -45,7 +45,7 @@ Planned schedule of work:
Also note that "fullybalanced=foo:2" is not currently actually
implemented!
* Add `git-annex maxsize` command.
* `git-annex info` can use maxsize to display how full repositories are
* balanced= and fullybalanced= need to limit the set of repositories to
ones with enough free space to contain a key.