summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Buchan <simon.buchan@skilitics.com>2014-07-03 13:14:02 +1200
committerSimon Buchan <simon.buchan@skilitics.com>2014-07-03 14:38:19 +1200
commit676fb4e4203eae0f3755a729a6582eb32fe9834f (patch)
tree393282658dbba382aff03877c73f080057ac9594
parent5728a5608d7e802999266ff2387747e4957be938 (diff)
downloadzsh-676fb4e4203eae0f3755a729a6582eb32fe9834f.tar.gz
zsh-676fb4e4203eae0f3755a729a6582eb32fe9834f.tar.bz2
zsh-676fb4e4203eae0f3755a729a6582eb32fe9834f.zip
Fix parse_git_dirty() when status.branch is set.
-rw-r--r--lib/git.zsh21
1 files changed, 9 insertions, 12 deletions
diff --git a/lib/git.zsh b/lib/git.zsh
index b0e73bf3a..8742a857a 100644
--- a/lib/git.zsh
+++ b/lib/git.zsh
@@ -10,23 +10,20 @@ function git_prompt_info() {
# Checks if working tree is dirty
parse_git_dirty() {
- local SUBMODULE_SYNTAX=''
- local GIT_STATUS=''
- local CLEAN_MESSAGE='nothing to commit (working directory clean)'
+ local STATUS=''
+ local FLAGS
+ FLAGS=('--porcelain')
if [[ "$(command git config --get oh-my-zsh.hide-status)" != "1" ]]; then
if [[ $POST_1_7_2_GIT -gt 0 ]]; then
- SUBMODULE_SYNTAX="--ignore-submodules=dirty"
+ FLAGS+='--ignore-submodules=dirty'
fi
if [[ "$DISABLE_UNTRACKED_FILES_DIRTY" == "true" ]]; then
- GIT_STATUS=$(command git status -s ${SUBMODULE_SYNTAX} -uno 2> /dev/null | tail -n1)
- else
- GIT_STATUS=$(command git status -s ${SUBMODULE_SYNTAX} 2> /dev/null | tail -n1)
- fi
- if [[ -n $GIT_STATUS ]]; then
- echo "$ZSH_THEME_GIT_PROMPT_DIRTY"
- else
- echo "$ZSH_THEME_GIT_PROMPT_CLEAN"
+ FLAGS+='--untracked-files=no'
fi
+ STATUS=$(command git status ${FLAGS} 2> /dev/null | tail -n1)
+ fi
+ if [[ -n $STATUS ]]; then
+ echo "$ZSH_THEME_GIT_PROMPT_DIRTY"
else
echo "$ZSH_THEME_GIT_PROMPT_CLEAN"
fi