# [PATCH] Add "--set-upstream" option to bash completion

2 messages from 2011-04-29 to 2011-04-29. Participants: Dmitry Medvinsky, Junio C Hamano.
Thread: https://gitlist.dev/t/27221

## Dmitry Medvinsky, 2011-04-29 15:57

Subject: [PATCH] Add "--set-upstream" option to bash completion
Message-ID: <1304092621-554-1-git-send-email-dmedvinsky@gmail.com>
URL: https://gitlist.dev/e/1304092621-554-1-git-send-email-dmedvinsky%40gmail.com

```
Since version 1.7.5 there is a new help message when pushing a branch with no
upstream telling about the ability to use "--set-upstream" option. That option
should be tab-completed for git push command.

Signed-off-by: Dmitry Medvinsky <dmedvinsky@gmail.com>
---
 contrib/completion/git-completion.bash |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 9150ea6..cc90e43 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1796,7 +1796,7 @@ _git_push ()
 	--*)
 		__gitcomp "
 			--all --mirror --tags --dry-run --force --verbose
-			--receive-pack= --repo=
+			--receive-pack= --repo= --set-upstream
 		"
 		return
 		;;
-- 
1.7.5

```

## Junio C Hamano, 2011-04-29 16:31

Subject: Re: [PATCH] Add "--set-upstream" option to bash completion
Message-ID: <7vbozpxbn1.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vbozpxbn1.fsf%40alter.siamese.dyndns.org
In-Reply-To: <1304092621-554-1-git-send-email-dmedvinsky@gmail.com>

```
Dmitry Medvinsky <dmedvinsky@gmail.com> writes:

> Since version 1.7.5 there is a new help message when pushing a branch with no
> upstream telling about the ability to use "--set-upstream" option. That option
> should be tab-completed for git push command.

Unless you are on a branch that does not have "upstream" defined for, the
option is useless, isn't it?  If that is the case, it should not be shown.

Can you make this conditional without too much overhead?  Is it worth
doing?

I suspect that offering this completion unconditionally hurts more than it
helps users, as it would be much less common for users to be using this
option than this option being no-op (or it could error out---I didn't
check).  After all, you give this option just once and then after that
keep running "git push" without it.

>
> Signed-off-by: Dmitry Medvinsky <dmedvinsky@gmail.com>
> ---
>  contrib/completion/git-completion.bash |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
> index 9150ea6..cc90e43 100755
> --- a/contrib/completion/git-completion.bash
> +++ b/contrib/completion/git-completion.bash
> @@ -1796,7 +1796,7 @@ _git_push ()
>  	--*)
>  		__gitcomp "
>  			--all --mirror --tags --dry-run --force --verbose
> -			--receive-pack= --repo=
> +			--receive-pack= --repo= --set-upstream
>  		"
>  		return
>  		;;

```
