summaryrefslogtreecommitdiff
path: root/contrib/completion
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2009-05-10 01:56:21 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2009-05-16 19:46:31 -0700
commitdd42c2f015102626562da05bb290f47862ea06fb (patch)
treedc13fff652478b84f2c09ea1fdb780e2424c3aa8 /contrib/completion
parentcompletion: simplify "current branch" in __git_ps1() (diff)
downloadtgif-dd42c2f015102626562da05bb290f47862ea06fb.tar.xz
completion: enhance "current branch" display
Introduce GIT_PS1_DESCRIBE option you can set to "contains", "branch", or "describe" to tweak the way how a detached HEAD is described. The default behaviour is to describe only exact match with some tag (otherwise use the first 7 hexdigits) as before. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib/completion')
-rwxr-xr-xcontrib/completion/git-completion.bash15
1 files changed, 13 insertions, 2 deletions
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index be591468db..dd6cd250e3 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -108,10 +108,21 @@ __git_ps1 ()
fi
b="$(git symbolic-ref HEAD 2>/dev/null)" || {
- b="$(git describe --exact-match HEAD 2>/dev/null)" ||
+
+ b="$(
+ case "${GIT_PS1_DESCRIBE_STYLE-}" in
+ (contains)
+ git describe --contains HEAD ;;
+ (branch)
+ git describe --contains --all HEAD ;;
+ (describe)
+ git describe HEAD ;;
+ (* | default)
+ git describe --exact-match HEAD ;;
+ esac 2>/dev/null)" ||
+
b="$(cut -c1-7 "$g/HEAD" 2>/dev/null)..." ||
b="unknown"
-
b="($b)"
}
fi