Skip to content

Commit

Permalink
bash: Complete long options to git-add.
Browse files Browse the repository at this point in the history
The new --interactive mode of git-add can be very useful, so users
will probably want to have completion for it.

Likewise the new git-add--interactive executable is actually a
plumbing command.  Its invoked by `git add --interactive` and is
not intended to be invoked directly by the user.  Therefore we
should hide it from the list of available Git commands.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Shawn O. Pearce authored and Junio C Hamano committed Feb 4, 2007
1 parent 2e3a430 commit 8435b54
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions contrib/completion/git-completion.bash
Original file line number Diff line number Diff line change
Expand Up @@ -235,6 +235,7 @@ __git_commands ()
for i in $(git help -a|egrep '^ ')
do
case $i in
add--interactive) : plumbing;;
cat-file) : plumbing;;
check-ref-format) : plumbing;;
commit-tree) : plumbing;;
Expand Down Expand Up @@ -358,6 +359,19 @@ _git_apply ()
COMPREPLY=()
}

_git_add ()
{
local cur="${COMP_WORDS[COMP_CWORD]}"
case "$cur" in
--*)
COMPREPLY=($(compgen -W "
--interactive
" -- "$cur"))
return
esac
COMPREPLY=()
}

_git_branch ()
{
local cur="${COMP_WORDS[COMP_CWORD]}"
Expand Down Expand Up @@ -786,6 +800,7 @@ _git ()

case "$command" in
am) _git_am ;;
add) _git_add ;;
apply) _git_apply ;;
branch) _git_branch ;;
checkout) _git_checkout ;;
Expand Down Expand Up @@ -852,6 +867,7 @@ complete -o default -o nospace -F _git_log git-whatchanged
# included the '.exe' suffix.
#
if [ Cygwin = "$(uname -o 2>/dev/null)" ]; then
complete -o default -F _git_add git-add.exe
complete -o default -F _git_apply git-apply.exe
complete -o default -o nospace -F _git git.exe
complete -o default -F _git_branch git-branch.exe
Expand Down

0 comments on commit 8435b54

Please sign in to comment.