78e3f38db77701b74073539629d636ac5ad3a67b

Author
Robby Russell <robby@planetargon.com>
Committer
Robby Russell <robby@planetargon.com>
Date

Message

Merge pull request #1258 from caio/git-branch-status

Add branch status support to git_prompt_status

Diff

 1diff --git a/lib/git.zsh b/lib/git.zsh
 2index 4eaa299f28e3126e3a19082211031973910fa12c..95dd3dd43313e655a7bc86ae6e3f9384f01faa84 100644
 3--- a/lib/git.zsh
 4+++ b/lib/git.zsh
 5@@ -58,7 +58,7 @@ function git_prompt_long_sha() {
 6 
 7 # Get the status of the working tree
 8 git_prompt_status() {
 9-  INDEX=$(git status --porcelain 2> /dev/null)
10+  INDEX=$(git status --porcelain -b 2> /dev/null)
11   STATUS=""
12   if $(echo "$INDEX" | grep '^?? ' &> /dev/null); then
13     STATUS="$ZSH_THEME_GIT_PROMPT_UNTRACKED$STATUS"
14@@ -88,6 +88,15 @@ git_prompt_status() {
15   if $(echo "$INDEX" | grep '^UU ' &> /dev/null); then
16     STATUS="$ZSH_THEME_GIT_PROMPT_UNMERGED$STATUS"
17   fi
18+  if $(echo "$INDEX" | grep '^## .*ahead' &> /dev/null); then
19+    STATUS="$ZSH_THEME_GIT_PROMPT_AHEAD$STATUS"
20+  fi
21+  if $(echo "$INDEX" | grep '^## .*behind' &> /dev/null); then
22+    STATUS="$ZSH_THEME_GIT_PROMPT_BEHIND$STATUS"
23+  fi
24+  if $(echo "$INDEX" | grep '^## .*diverged' &> /dev/null); then
25+    STATUS="$ZSH_THEME_GIT_PROMPT_DIVERGED$STATUS"
26+  fi
27   echo $STATUS
28 }
29