summaryrefslogtreecommitdiff
path: root/lib/git.zsh
diff options
context:
space:
mode:
authorRobby Russell <robby@planetargon.com>2012-12-02 11:50:36 -0800
committerRobby Russell <robby@planetargon.com>2012-12-02 11:50:36 -0800
commit56f094860bec91c1968d46cccd5d2c2e3d179de1 (patch)
tree88038f3e9a42d40906ce77252d4e664a1eb60fb8 /lib/git.zsh
parentded745bf1471487c7dc537c781685615ff4c2515 (diff)
parent80ab595696f30d89bf52bb5189fa39518a3ca780 (diff)
downloadzsh-56f094860bec91c1968d46cccd5d2c2e3d179de1.tar.gz
zsh-56f094860bec91c1968d46cccd5d2c2e3d179de1.tar.bz2
zsh-56f094860bec91c1968d46cccd5d2c2e3d179de1.zip
Merge branch 'master' of github.com:robbyrussell/oh-my-zsh
Diffstat (limited to 'lib/git.zsh')
-rw-r--r--lib/git.zsh19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/git.zsh b/lib/git.zsh
index fb4ad8ca6..258b1df8f 100644
--- a/lib/git.zsh
+++ b/lib/git.zsh
@@ -18,6 +18,25 @@ parse_git_dirty() {
fi
}
+# get the difference between the local and remote branches
+git_remote_status() {
+ remote=${$(git rev-parse --verify ${hook_com[branch]}@{upstream} --symbolic-full-name 2>/dev/null)/refs\/remotes\/}
+ if [[ -n ${remote} ]] ; then
+ ahead=$(git rev-list ${hook_com[branch]}@{upstream}..HEAD 2>/dev/null | wc -l)
+ behind=$(git rev-list HEAD..${hook_com[branch]}@{upstream} 2>/dev/null | wc -l)
+
+ if [ $ahead -eq 0 ] && [ $behind -gt 0 ]
+ then
+ echo "$ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE"
+ elif [ $ahead -gt 0 ] && [ $behind -eq 0 ]
+ then
+ echo "$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE"
+ elif [ $ahead -gt 0 ] && [ $behind -gt 0 ]
+ then
+ echo "$ZSH_THEME_GIT_PROMPT_DIVERGED_REMOTE"
+ fi
+ fi
+}
# Checks if there are commits ahead from remote
function git_prompt_ahead() {