diff options
author | Joey Hess <joey@kitenet.net> | 2010-12-28 17:44:36 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2010-12-28 17:44:36 -0400 |
commit | 3714364905a23f3b64c6573a4121bd1cc5acb11e (patch) | |
tree | 71ec1d6007c1bc1be3cf397dd07c601b7f5ce5ec /doc/todo/git-annex-shell.mdwn | |
parent | 7329a1b655f7011f09a4519209da748061a014c4 (diff) |
design for a git-annex-shell
Diffstat (limited to 'doc/todo/git-annex-shell.mdwn')
-rw-r--r-- | doc/todo/git-annex-shell.mdwn | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/doc/todo/git-annex-shell.mdwn b/doc/todo/git-annex-shell.mdwn new file mode 100644 index 000000000..a5ff7d6fd --- /dev/null +++ b/doc/todo/git-annex-shell.mdwn @@ -0,0 +1,42 @@ +I've been considering adding a `git-annex-shell` command. This would +be similar to `git-shell` (and in fact would pass unknown commands off to +`git-shell`). + +## Reasons + +* Allows locking down an account to only be able to use git-annex (and + git). +* Avoids needing to construct complex shell commands to run on the remote + system. (Mostly already avoided by the plumbing level commands.) +* Could possibly allow multiple things to be done with one ssh connection + in future. +* Allows expanding `~` and `~user` in repopath on the remote system. + +## Design + +`git-annex-shell -c <command> <repopath> <arguments>` + +### options + +Need at least `--quiet`, `--backend`, `--key`, `--force` + +### commands + +* `configlist repopath` + + Returns `git config --list`, for use by `tryGitConfigRead`. + + May filter the listed config to only the options git-annex really needs, + to prevent info disclosure. + +* `inannex repopath key ...` + + Checks if the keys are in the annex; shell exits zero if so. + +* `dropkey repopath key ... ` + + Same as `git annex dropkey`, and taking the same dashed options. + +* `setkey repopath tmpfile` + + Same as `git annex setkey`, and taking the same dashed options. |