From: Julien Carsique <julien.carsi...@gmail.com>

When working with multiple remotes, it is common to switch the upstream
from a remote to another. Doing so, the prompt may not be the expected
one. Providing an option to display tracking information sounds useful.

Add a "name" option to GIT_PS1_SHOWUPSTREAM which will show the upstream
abbrev name. This option is ignored if "verbose" is false.

Signed-off-by: Julien Carsique <julien.carsi...@gmail.com>
Reviewed-by: SZEDER Gábor <sze...@ira.uka.de>
---
 contrib/completion/git-prompt.sh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/contrib/completion/git-prompt.sh b/contrib/completion/git-prompt.sh
index d6c61b2..84cd3a8 100644
--- a/contrib/completion/git-prompt.sh
+++ b/contrib/completion/git-prompt.sh
@@ -60,6 +60,7 @@
 # of values:
 #
 #     verbose       show number of commits ahead/behind (+/-) upstream
+#     name          if verbose, then also show the upstream abbrev name
 #     legacy        don't use the '--count' option available in recent
 #                   versions of git-rev-list
 #     git           always compare HEAD to @{upstream}
@@ -94,7 +95,7 @@ __git_ps1_show_upstream ()
 {
        local key value
        local svn_remote svn_url_pattern count n
-       local upstream=git legacy="" verbose=""
+       local upstream=git legacy="" verbose="" name=""
 
        svn_remote=()
        # get some config options from git-config
@@ -122,6 +123,7 @@ __git_ps1_show_upstream ()
                git|svn) upstream="$option" ;;
                verbose) verbose=1 ;;
                legacy)  legacy=1  ;;
+               name)   name=1 ;;
                esac
        done
 
@@ -204,6 +206,9 @@ __git_ps1_show_upstream ()
                *)          # diverged from upstream
                        p=" u+${count#* }-${count%      *}" ;;
                esac
+               if [[ -n "$count" && -n "$name" ]]; then
+                       p="$p $(git rev-parse --abbrev-ref "$upstream" 
2>/dev/null)"
+               fi
        fi
 
 }
-- 
1.8.1.2

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to