X-Git-Url: https://git.madduck.net/code/vcsh.git/blobdiff_plain/bdf40d5f42978132658bee5f955b52f7de6dcc93..4327b9b3c0a74b45c670f5af44700ef8d4579d8e:/_vcsh diff --git a/_vcsh b/_vcsh index 26ee9b9..a33551b 100644 --- a/_vcsh +++ b/_vcsh @@ -43,6 +43,14 @@ function _vcsh-list-tracked-by () { (( CURRENT == 2 )) && __vcsh_repositories } +function _vcsh-pull () { + _nothing +} + +function _vcsh-push () { + _nothing +} + function _vcsh-rename () { (( CURRENT == 2 )) && __vcsh_repositories (( CURRENT == 3 )) && _message "new repository name" @@ -58,7 +66,7 @@ function _vcsh-run () { fi } -function _vcsh-setup () { +function _vcsh-upgrade () { (( CURRENT == 2 )) && __vcsh_repositories } @@ -81,6 +89,7 @@ function _vcsh () { subcommands=( "clone:clone an existing repository" + "commit:commit in all repositories" "delete:delete an existing repository" "enter:enter repository; spawn new <\$SHELL>" "help:display help" @@ -88,9 +97,12 @@ function _vcsh () { "list:list all local vcsh repositories" "list-tracked:list all files tracked by vcsh" "list-tracked-by:list files tracked by a repository" + "pull:pull from all vcsh remotes" + "push:push to vcsh remotes" "rename:rename a repository" "run:run command with <\$GIT_DIR> and <\$GIT_WORK_TREE> set" - "setup:set up repository with recommended settings" + "status:show statuses of all/one vcsh repositories" + "upgrade:upgrade repository to currently recommended settings" "version:print version information" "which:find in name of any tracked file" "write-gitignore:write .gitignore.d/ via git ls-files" @@ -114,8 +126,7 @@ function _vcsh () { if ! (( ${+functions[_vcsh-$vcshcommand]} )); then # There is no handler function, so this is probably the name # of a repository. Act accordingly. - _message "git sub-command" - #TODO and now we need to complete on git subcommands + _dispatch git git else curcontext="${curcontext%:*:*}:vcsh-${vcshcommand}:" _call_function ret _vcsh-${vcshcommand}