[FYI PATCH] bash completion: alias 'g' to 'git' with completion
From: Thomas Rast <hidden>
Date: 2016-06-15 22:45:26
Subsystem:
the rest · Maintainer:
Linus Torvalds
--- Rob Sanheim wrote:
On Thu, Oct 2, 2008 at 11:10 PM, Shawn O. Pearce [off-list ref] wrote:quoted
No, you'll need to alias 'g' to git in bash, and then if you still want completion you'll need to also register the compgen to call _git completion routine. Its two lines: alias g=git complete -o default -o nospace -F _git gThanks, that did it.
Actually it's not enough, you need to teach fetch, pull and push to recognise the new alias too, as in this patch. I do wonder if there's a better approach to those functions however, so that the "obvious" fix suggested by Shawn would work. - Thomas contrib/completion/git-completion.bash | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 7284c3b..547e735 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash@@ -789,7 +789,7 @@ _git_fetch () git-fetch*,1) __gitcomp "$(__git_remotes)" ;; - git,2) + git,2|g,2) __gitcomp "$(__git_remotes)" ;; *)
@@ -1053,7 +1053,7 @@ _git_pull () git-pull*,1) __gitcomp "$(__git_remotes)" ;; - git,2) + git,2|g,2) __gitcomp "$(__git_remotes)" ;; *)
@@ -1075,7 +1075,7 @@ _git_push () git-push*,1) __gitcomp "$(__git_remotes)" ;; - git,2) + git,2|g,2) __gitcomp "$(__git_remotes)" ;; *)
@@ -1717,6 +1717,7 @@ _gitk () } complete -o default -o nospace -F _git git +complete -o default -o nospace -F _git g complete -o default -o nospace -F _gitk gitk # The following are necessary only for Cygwin, and only are needed
--
1.6.0.2.771.g3967