summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorSZEDER Gábor <szeder@ira.uka.de>2008-06-27 14:37:15 (GMT)
committerJunio C Hamano <gitster@pobox.com>2008-07-05 18:22:13 (GMT)
commit7bedebcaad351108a8f6eab6a031f2be2c06b613 (patch)
treef6faf1fc4dd06fde0c9724188b17798e51e1576e /contrib
parent6991357513bf8bfbb71a4675e271b386cc273476 (diff)
downloadgit-7bedebcaad351108a8f6eab6a031f2be2c06b613.zip
git-7bedebcaad351108a8f6eab6a031f2be2c06b613.tar.gz
git-7bedebcaad351108a8f6eab6a031f2be2c06b613.tar.bz2
stash: introduce 'stash save --keep-index' option
'git stash save' saves local modifications to a new stash, and runs 'git reset --hard' to revert them to a clean index and work tree. When the '--keep-index' option is specified, after that 'git reset --hard' the previous contents of the index is restored and the work tree is updated to match the index. This option is useful if the user wants to commit only parts of his local modifications, but wants to test those parts before committing. Also add support for the completion of the new option, and add an example use case to the documentation. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib')
-rwxr-xr-xcontrib/completion/git-completion.bash13
1 files changed, 12 insertions, 1 deletions
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 3f46149..595de80 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1137,8 +1137,19 @@ _git_show ()
_git_stash ()
{
local subcommands='save list show apply clear drop pop create'
- if [ -z "$(__git_find_subcommand "$subcommands")" ]; then
+ local subcommand="$(__git_find_subcommand "$subcommands")"
+ if [ -z "$subcommand" ]; then
__gitcomp "$subcommands"
+ else
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$subcommand,$cur" in
+ save,--*)
+ __gitcomp "--keep-index"
+ ;;
+ *)
+ COMPREPLY=()
+ ;;
+ esac
fi
}