bash: Support new 'git fetch' options
authorBjörn Gustavsson <bgustavsson@gmail.com>
Sat, 12 Dec 2009 10:21:46 +0000 (11:21 +0100)
committerJunio C Hamano <gitster@pobox.com>
Sat, 12 Dec 2009 23:32:07 +0000 (15:32 -0800)
Support the new options --all, --prune, and --dry-run for
'git fetch'.

As the --multiple option was primarily introduced to enable
'git remote update' to be re-implemented in terms of 'git fetch'
(16679e37) and is not likely to be used much from the command
line, it does not seems worthwhile to complicate the code
(to support completion of multiple remotes) to handle it.

Signed-off-by: Björn Gustavsson <bgustavsson@gmail.com>
Acked-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
contrib/completion/git-completion.bash
index 7c18b0c07e576643dd00e6cfe7bbf7fb552c895b..fbfa5f25c1b2c75943464757d571d3fa89e209aa 100755 (executable)
@@ -417,7 +417,17 @@ __git_complete_remote_or_refspec ()
        while [ $c -lt $COMP_CWORD ]; do
                i="${COMP_WORDS[c]}"
                case "$i" in
-               --all|--mirror) [ "$cmd" = "push" ] && no_complete_refspec=1 ;;
+               --mirror) [ "$cmd" = "push" ] && no_complete_refspec=1 ;;
+               --all)
+                       case "$cmd" in
+                       push) no_complete_refspec=1 ;;
+                       fetch)
+                               COMPREPLY=()
+                               return
+                               ;;
+                       *) ;;
+                       esac
+                       ;;
                -*) ;;
                *) remote="$i"; break ;;
                esac
@@ -1002,7 +1012,7 @@ _git_difftool ()
 
 __git_fetch_options="
        --quiet --verbose --append --upload-pack --force --keep --depth=
-       --tags --no-tags
+       --tags --no-tags --all --prune --dry-run
 "
 
 _git_fetch ()