git-annex-shell(1) - Linux man page

Name

git-annex-shell - Restricted login shell for git-annex only SSH access

Synopsis

git-annex-shell [-c] command [params ...]

Description

git-annex-shell is a restricted shell, similar to git-shell, which can be used as a login shell for SSH accounts.

Since its syntax is identical to git-shell's, it can be used as a drop-in replacement anywhere git-shell is used. For example it can be used as a user's restricted login shell.

Commands

Any command not listed below is passed through to git-shell.

Note that the directory parameter should be an absolute path, otherwise it is assumed to be relative to the user's home directory. Also the first "/~/" or "/~user/" is expanded to the specified home directory.

configlist directory
This outputs a subset of the git configuration, in the same form as git config --list
inannex directory [key ...]
This checks if all specified keys are present in the annex, and exits zero if so.
dropkey directory [key ...]
This drops the annexed data for the specified keys.
recvkey directory key
This runs rsync in server mode to receive the content of a key, and stores the content in the annex.
sendkey directory key
This runs rsync in server mode to transfer out the content of a key.
commit
This commits any staged changes to the git-annex branch. It also runs the annex-content hook.

Options

Most options are the same as in git-annex.
The ones specific
to git-annex-shell are:
--uuid=UUID
git-annex uses this to specify the UUID of the repository it was expecting git-annex-shell to access, as a sanity check.

Hook

After content is received or dropped from the repository by git-annex-shell, it runs a hook,

Environment

GIT_ANNEX_SHELL_READONLY
If set, disallows any command that could modify the repository.
GIT_ANNEX_SHELL_LIMITED
If set, disallows running git-shell to handle unknown commands.

See Also

git-annex(1)

git-shell(1)

Author

Joey Hess <joey@kitenet.net>

<http://git-annex.branchable.com/>