Fix parse_git_dirty() when status.branch is set.

This commit is contained in:
Simon Buchan 2014-07-03 13:14:02 +12:00
parent 5728a5608d
commit 676fb4e420

View file

@ -10,26 +10,23 @@ function git_prompt_info() {
# Checks if working tree is dirty # Checks if working tree is dirty
parse_git_dirty() { parse_git_dirty() {
local SUBMODULE_SYNTAX='' local STATUS=''
local GIT_STATUS='' local FLAGS
local CLEAN_MESSAGE='nothing to commit (working directory clean)' FLAGS=('--porcelain')
if [[ "$(command git config --get oh-my-zsh.hide-status)" != "1" ]]; then if [[ "$(command git config --get oh-my-zsh.hide-status)" != "1" ]]; then
if [[ $POST_1_7_2_GIT -gt 0 ]]; then if [[ $POST_1_7_2_GIT -gt 0 ]]; then
SUBMODULE_SYNTAX="--ignore-submodules=dirty" FLAGS+='--ignore-submodules=dirty'
fi fi
if [[ "$DISABLE_UNTRACKED_FILES_DIRTY" == "true" ]]; then if [[ "$DISABLE_UNTRACKED_FILES_DIRTY" == "true" ]]; then
GIT_STATUS=$(command git status -s ${SUBMODULE_SYNTAX} -uno 2> /dev/null | tail -n1) FLAGS+='--untracked-files=no'
else
GIT_STATUS=$(command git status -s ${SUBMODULE_SYNTAX} 2> /dev/null | tail -n1)
fi fi
if [[ -n $GIT_STATUS ]]; then STATUS=$(command git status ${FLAGS} 2> /dev/null | tail -n1)
fi
if [[ -n $STATUS ]]; then
echo "$ZSH_THEME_GIT_PROMPT_DIRTY" echo "$ZSH_THEME_GIT_PROMPT_DIRTY"
else else
echo "$ZSH_THEME_GIT_PROMPT_CLEAN" echo "$ZSH_THEME_GIT_PROMPT_CLEAN"
fi fi
else
echo "$ZSH_THEME_GIT_PROMPT_CLEAN"
fi
} }
# get the difference between the local and remote branches # get the difference between the local and remote branches