.TH git-annex-shell 1 .SH NAME git\-annex\-shell \- Restricted login shell for git\-annex only SSH access .PP .SH SYNOPSIS git\-annex\-shell [\-c] command [params ...] .PP .SH DESCRIPTION git\-annex\-shell is a restricted shell, similar to git\-shell, which can be used as a login shell for SSH accounts. .PP 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. .PP .SH COMMANDS Any command not listed below is passed through to git\-shell. .PP 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. .PP .IP "configlist directory" This outputs a subset of the git configuration, in the same form as git config \-\-list .IP .IP "inannex directory [key ...]" This checks if all specified keys are present in the annex, and exits zero if so. .IP .IP "dropkey directory [key ...]" This drops the annexed data for the specified keys. .IP .IP "recvkey directory key" This runs rsync in server mode to receive the content of a key, and stores the content in the annex. .IP .IP "sendkey directory key" This runs rsync in server mode to transfer out the content of a key. .IP .IP "commit" This commits any staged changes to the git\-annex branch. It also runs the annex\-content hook. .IP .SH OPTIONS Most options are the same as in git\-annex. The ones specific to git\-annex\-shell are: .PP .IP "\-\-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. .IP .SH HOOK After content is received or dropped from the repository by git\-annex\-shell, it runs a hook, .git/hooks/annex\-content (or hooks/annex\-content on a bare repository). The hook is not currently passed any information about what changed. .PP .SH ENVIRONMENT .IP "GIT_ANNEX_SHELL_READONLY" .IP If set, disallows any command that could modify the repository. .IP .IP "GIT_ANNEX_SHELL_LIMITED" If set, disallows running git\-shell to handle unknown commands. .IP .SH SEE ALSO git\-annex(1) .PP git\-shell(1) .PP .SH AUTHOR Joey Hess .PP .PP .PP