aboutsummaryrefslogtreecommitdiff
path: root/bash/bashrc.d
diff options
context:
space:
mode:
authorTom Ryder <tom@sanctum.geek.nz>2016-08-31 17:38:35 +1200
committerTom Ryder <tom@sanctum.geek.nz>2016-08-31 17:50:37 +1200
commit5eb0f37867b68ff6d5060a4ef823a5a444fdcc52 (patch)
tree825320cd58fb8ad959002a95dafdfc42123d5206 /bash/bashrc.d
parentcbad3d16fb358fb6042a0e91a21b15eeb90bb95c (diff)
downloaddotfiles-5eb0f37867b68ff6d5060a4ef823a5a444fdcc52.tar.gz
dotfiles-5eb0f37867b68ff6d5060a4ef823a5a444fdcc52.zip
Restore git symbolic-ref as first attempt
Otherwise if two branches point to the same commit, you can't be sure which one will show up.
Diffstat (limited to 'bash/bashrc.d')
-rw-r--r--bash/bashrc.d/prompt.bash6
1 files changed, 4 insertions, 2 deletions
diff --git a/bash/bashrc.d/prompt.bash b/bash/bashrc.d/prompt.bash
index b95cf92a..55c33282 100644
--- a/bash/bashrc.d/prompt.bash
+++ b/bash/bashrc.d/prompt.bash
@@ -108,8 +108,10 @@ prompt() {
# failing all of that just show the short commit ID, in that order
# of preference; if none of that works, bail out
local name
- name=$(git describe --all --always --exact-match \
- HEAD 2>/dev/null) || return
+ name=$( {
+ git symbolic-ref --quiet HEAD ||
+ git describe --all --always --exact-match HEAD
+ } 2>/dev/null) || return
name=${name##*/}
[[ -n $name ]] || return