summaryrefslogtreecommitdiff
path: root/Completion/Unix/Command/_git
diff options
context:
space:
mode:
authorClint Adams <clint@users.sourceforge.net>2007-10-01 19:34:53 +0000
committerClint Adams <clint@users.sourceforge.net>2007-10-01 19:34:53 +0000
commitea7809d5a7e1558e27715a82a369cfcd9678de63 (patch)
tree0479dd036fcdd713386f86dfe52e8fafc9941eb5 /Completion/Unix/Command/_git
parent44b2e3e2b20c96a27c6aaf246202eaf3e2bbd214 (diff)
downloadzsh-ea7809d5a7e1558e27715a82a369cfcd9678de63.tar.gz
zsh-ea7809d5a7e1558e27715a82a369cfcd9678de63.zip
Nikolai Weibull: 23888: complete branch names and cached files after git log.
Diffstat (limited to 'Completion/Unix/Command/_git')
-rw-r--r--Completion/Unix/Command/_git13
1 files changed, 12 insertions, 1 deletions
diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 5d4a181e2..25d446869 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -1702,11 +1702,22 @@ _git-grep () {
(( $+functions[_git-log] )) ||
_git-log () {
+ local curcontext=$curcontext state line
+ declare -A opt_args
+
__git_setup_revision_arguments
_arguments -S \
$revision_arguments \
- '*:file:__git_cached_files' && ret=0
+ '*:file-or-branch:->files' && ret=0
+
+ case $state in
+ (files)
+ _alternative \
+ 'files:index file:__git_cached_files' \
+ 'branches:branch:__git_branch_names' && ret=0
+ ;;
+ esac
}
# TODO: repository needs fixing