git-annex/doc/git-annex-lock.mdwn
Joey Hess a325524454
--json-exceptions
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
2023-04-25 17:05:33 -04:00

56 lines
1.2 KiB
Markdown

# NAME
git-annex lock - lock files to prevent modification
# SYNOPSIS
git annex lock `[path ...]`
# DESCRIPTION
Lock the specified annexed files, to prevent them from being modified.
When no files are specified, all annexed files in the current directory are
locked.
Locking a file changes how it is stored in the git repository (from a
pointer file to a symlink), so this command will make a change that you
can commit.
# OPTIONS
* file matching options
The [[git-annex-matching-options]](1)
can be used to specify files to lock.
* `--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 file
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 file.
* `--json-exceptions`
Output additional JSON objects for some exceptions that are not
associated with a particular file.
* Also the [[git-annex-common-options]](1) can be used.
# SEE ALSO
[[git-annex]](1)
[[git-annex-add]](1)
[[git-annex-unlock]](1)
# AUTHOR
Joey Hess <id@joeyh.name>
Warning: Automatically converted into a man page by mdwn2man. Edit with care.