a325524454
Added a --json-exceptions option, which makes some exceptions be output in json. The distinction is that --json-error-messages is for messages relating to a particular ActionItem, while --json-exceptions is for messages that are not, eg ones for a file that does not exist. It's unfortunate that we need two switches with such a fine distinction between them, but I'm worried about maintaining backwards compatability in the json output, to avoid breaking anything that parses it, and this was the way to make sure I didn't. toplevelWarning is generally used for the latter kind of message. And the other calls to toplevelWarning could be converted to showException. The only possible gotcha is that if toplevelWarning is ever called after starting acting on a file, it will add to the --json-error-messages of the json displayed for that file and converting to showException would be a behavior change. That seems unlikely, but I didn't convery everything to avoid needing to satisfy myself it was not a concern. Sponsored-by: Dartmouth College's Datalad project
97 lines
2.9 KiB
Markdown
97 lines
2.9 KiB
Markdown
# NAME
|
|
|
|
git-annex examinekey - prints information from a key
|
|
|
|
# SYNOPSIS
|
|
|
|
git annex examinekey `[key ...]`
|
|
|
|
# DESCRIPTION
|
|
|
|
This plumbing-level command is given a key, and prints information
|
|
that can be determined purely by looking at the key.
|
|
|
|
# OPTIONS
|
|
|
|
* `--format=value`
|
|
|
|
Use custom output formatting.
|
|
|
|
The value is a format string, in which '${var}' is expanded to the
|
|
value of a variable. To right-justify a variable with whitespace,
|
|
use '${var;width}' ; to left-justify a variable, use '${var;-width}';
|
|
to escape unusual characters (including control characters)
|
|
in a variable, use '${escaped_var}'
|
|
|
|
To generate a path from the top of the repository to the git-annex
|
|
object for a key, use ${objectpath}. To generate the value of a
|
|
git-annex pointer file for a key, use ${objectpointer}.
|
|
|
|
These variables are also available for use in formats: ${key}, ${backend},
|
|
${bytesize}, ${humansize}, ${keyname}, ${hashdirlower}, ${hashdirmixed},
|
|
${mtime} (for the mtime field of a WORM key), ${file} (when a filename is
|
|
provided to examinekey).
|
|
|
|
Also, '\\n' is a newline, '\\000' is a NULL, etc.
|
|
|
|
The default output format is the same as `--format='${escapedkey}\\n'`
|
|
when outputting to the terminal, and otherwise `--format='${key}\\n'`
|
|
|
|
* `--json`
|
|
|
|
Enable JSON output. This is intended to be parsed by programs that use
|
|
git-annex. Each line of output is a JSON object corresponding to a key
|
|
being processed.
|
|
|
|
* `--json-error-messages`
|
|
|
|
Adds an "error-messages" field to the JSON that contains messages that
|
|
would normally be output to the standard error when processing a key.
|
|
|
|
* `--json-exceptions`
|
|
|
|
Output additional JSON objects for some exceptions that are not
|
|
associated with a particular key.
|
|
|
|
* `--migrate-to-backend=backend`
|
|
|
|
Attempt to migrate the input key to the new backend specified. If
|
|
successful, outputs information about the migrated key. Otherwise,
|
|
outputs information about the input key.
|
|
|
|
This only does fast migrations; it will not re-hash the content of a key
|
|
or similar expensive operation.
|
|
|
|
One way to use it is to add an extension to a key.
|
|
|
|
git-annex examinekey SHA256--xxx --migrate-to-backend=SHA256E --filename=foo.tar.gz
|
|
|
|
Or to remove the extension from a key:
|
|
|
|
git-annex examinekey SHA256E-xxx.tar.gz --migrate-to-backend=SHA256
|
|
|
|
* `--filename=name`
|
|
|
|
The name of a file associated with the key, eg a work tree file.
|
|
It does not need to exist. This is needed when using `--migrate-to-backend`
|
|
to add an extension to the key.
|
|
|
|
* `--batch`
|
|
|
|
Enable batch mode, in which a line containing a key is read from stdin,
|
|
the information about it is output to stdout, and repeat.
|
|
|
|
In order to also provide the name of a file associated with the key, the
|
|
line can be in the format "$key $file"
|
|
|
|
* Also the [[git-annex-common-options]](1) can be used.
|
|
|
|
# SEE ALSO
|
|
|
|
[[git-annex]](1)
|
|
|
|
# AUTHOR
|
|
|
|
Joey Hess <id@joeyh.name>
|
|
|
|
Warning: Automatically converted into a man page by mdwn2man. Edit with care.
|