Skip to contentSkip to conversation

bash: Support new 'git fetch' options

PATCH In review Björn Gustavsson 2 participants 2 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 bash: Support new 'git fetch' options

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.

---
 contrib/completion/git-completion.bash |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)
contrib/completion/git-completion.bash +12 -2
index 7c18b0c..fbfa5f2 100755
@@ -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 ()
Signature · 1 line
1.6.6.rc2
Acked-by on v1 1/1
#1 lore raw
Quoted 10 lines · Bj??rn Gustavsson

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.

Junio, this belongs in 1.6.6 as its completion support for 1.6.6 features...

Signature · 1 line
Shawn.