Browse Source

Updated git_commits_ahead function (#5247)

* Function wasn't returning correct value
* Updated underlying git command
* Kept echo command from previous function for backwards compatibility
* Kept function consistent with git_commits_behind
Steven 7 years ago
parent
commit
61981951b1
1 changed files with 2 additions and 3 deletions
  1. 2 3
      lib/git.zsh

+ 2 - 3
lib/git.zsh

@@ -76,9 +76,8 @@ function git_current_branch() {
 
 # Gets the number of commits ahead from remote
 function git_commits_ahead() {
-  if $(echo "$(command git log @{upstream}..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then
-    local COMMITS
-    COMMITS=$(command git log @{upstream}..HEAD | grep '^commit' | wc -l | tr -d ' ')
+  if $(command git rev-parse --git-dir > /dev/null 2>&1); then
+    local COMMITS="$(git rev-list --count @{upstream}..HEAD)"
     echo "$ZSH_THEME_GIT_COMMITS_AHEAD_PREFIX$COMMITS$ZSH_THEME_GIT_COMMITS_AHEAD_SUFFIX"
   fi
 }