Support --strategy=x completion in addition to --strategy x.
Because git-merge and git-rebase both accept -s, --strategy or --strategy= we should recognize all three formats in the bash completion functions and issue back all merge strategies on demand. I also moved the prior word testing to be before the current word testing, as the current word cannot be completed with -- if the prior word was an option which requires a parameter, such as -s or --strategy. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
5de40f59d4
commit
ce1e39d29e
@ -435,18 +435,23 @@ _git_log ()
|
||||
_git_merge ()
|
||||
{
|
||||
local cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
case "${COMP_WORDS[COMP_CWORD-1]}" in
|
||||
-s|--strategy)
|
||||
COMPREPLY=($(compgen -W "$(__git_merge_strategies)" -- "$cur"))
|
||||
return
|
||||
esac
|
||||
case "$cur" in
|
||||
--strategy=*)
|
||||
COMPREPLY=($(compgen -W "$(__git_merge_strategies)" \
|
||||
-- "${cur##--strategy=}"))
|
||||
return
|
||||
;;
|
||||
--*)
|
||||
COMPREPLY=($(compgen -W "
|
||||
--no-commit --no-summary --squash --strategy
|
||||
" -- "$cur"))
|
||||
return
|
||||
esac
|
||||
case "${COMP_WORDS[COMP_CWORD-1]}" in
|
||||
-s|--strategy)
|
||||
COMPREPLY=($(compgen -W "$(__git_merge_strategies)" -- "$cur"))
|
||||
return
|
||||
esac
|
||||
COMPREPLY=($(compgen -W "$(__git_refs)" -- "$cur"))
|
||||
}
|
||||
|
||||
@ -523,18 +528,23 @@ _git_rebase ()
|
||||
" -- "$cur"))
|
||||
return
|
||||
fi
|
||||
case "${COMP_WORDS[COMP_CWORD-1]}" in
|
||||
-s|--strategy)
|
||||
COMPREPLY=($(compgen -W "$(__git_merge_strategies)" -- "$cur"))
|
||||
return
|
||||
esac
|
||||
case "$cur" in
|
||||
--strategy=*)
|
||||
COMPREPLY=($(compgen -W "$(__git_merge_strategies)" \
|
||||
-- "${cur##--strategy=}"))
|
||||
return
|
||||
;;
|
||||
--*)
|
||||
COMPREPLY=($(compgen -W "
|
||||
--onto --merge --strategy
|
||||
" -- "$cur"))
|
||||
return
|
||||
esac
|
||||
case "${COMP_WORDS[COMP_CWORD-1]}" in
|
||||
-s|--strategy)
|
||||
COMPREPLY=($(compgen -W "$(__git_merge_strategies)" -- "$cur"))
|
||||
return
|
||||
esac
|
||||
COMPREPLY=($(compgen -W "$(__git_refs)" -- "$cur"))
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user