|
@@ -59,13 +59,6 @@ git_remote_status() {
|
|
|
fi
|
|
|
}
|
|
|
|
|
|
-# Checks if there are commits ahead from remote
|
|
|
-function git_prompt_ahead() {
|
|
|
- if $(echo "$(command git log @{upstream}..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then
|
|
|
- echo "$ZSH_THEME_GIT_PROMPT_AHEAD"
|
|
|
- fi
|
|
|
-}
|
|
|
-
|
|
|
# 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
|
|
@@ -74,6 +67,29 @@ function git_commits_ahead() {
|
|
|
fi
|
|
|
}
|
|
|
|
|
|
+# Outputs if current branch is ahead of remote
|
|
|
+function git_prompt_ahead() {
|
|
|
+ if [[ -n "$(command git rev-list origin/$(current_branch)..HEAD 2> /dev/null)" ]]; then
|
|
|
+ echo "$ZSH_THEME_GIT_PROMPT_AHEAD"
|
|
|
+ fi
|
|
|
+}
|
|
|
+
|
|
|
+# Outputs if current branch is behind remote
|
|
|
+function git_prompt_behind() {
|
|
|
+ if [[ -n "$(command git rev-list HEAD..origin/$(current_branch) 2> /dev/null)" ]]; then
|
|
|
+ echo "$ZSH_THEME_GIT_PROMPT_BEHIND"
|
|
|
+ fi
|
|
|
+}
|
|
|
+
|
|
|
+# Outputs if current branch exists on remote or not
|
|
|
+function git_prompt_remote() {
|
|
|
+ if [[ -n "$(command git show-ref origin/$(current_branch) 2> /dev/null)" ]]; then
|
|
|
+ echo "$ZSH_THEME_GIT_PROMPT_REMOTE_EXISTS"
|
|
|
+ else
|
|
|
+ echo "$ZSH_THEME_GIT_PROMPT_REMOTE_MISSING"
|
|
|
+ fi
|
|
|
+}
|
|
|
+
|
|
|
# Formats prompt string for current git commit short SHA
|
|
|
function git_prompt_short_sha() {
|
|
|
SHA=$(command git rev-parse --short HEAD 2> /dev/null) && echo "$ZSH_THEME_GIT_PROMPT_SHA_BEFORE$SHA$ZSH_THEME_GIT_PROMPT_SHA_AFTER"
|