forked from extern/ohmyzsh
Fix parse_git_dirty() when status.branch is set.
This commit is contained in:
parent
5728a5608d
commit
676fb4e420
19
lib/git.zsh
19
lib/git.zsh
@ -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
|
||||||
|
Loading…
Reference in New Issue
Block a user