diff options
author | Robby Russell <robby@planetargon.com> | 2012-12-02 11:50:36 -0800 |
---|---|---|
committer | Robby Russell <robby@planetargon.com> | 2012-12-02 11:50:36 -0800 |
commit | 56f094860bec91c1968d46cccd5d2c2e3d179de1 (patch) | |
tree | 88038f3e9a42d40906ce77252d4e664a1eb60fb8 /lib/git.zsh | |
parent | ded745bf1471487c7dc537c781685615ff4c2515 (diff) | |
parent | 80ab595696f30d89bf52bb5189fa39518a3ca780 (diff) | |
download | zsh-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.zsh | 19 |
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() { |