|
|
|
|
@ -34,30 +34,26 @@ function git_prompt_info() { |
|
|
|
|
|
|
|
|
|
# Checks if working tree is dirty |
|
|
|
|
function parse_git_dirty() { |
|
|
|
|
if [[ "$(__git_prompt_git config --get oh-my-zsh.hide-dirty)" == "1" ]]; then |
|
|
|
|
return 0 |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
local STATUS |
|
|
|
|
local -a FLAGS |
|
|
|
|
FLAGS=('--porcelain') |
|
|
|
|
if [[ "${DISABLE_UNTRACKED_FILES_DIRTY:-}" == "true" ]]; then |
|
|
|
|
FLAGS+='--untracked-files=no' |
|
|
|
|
if [[ "$(__git_prompt_git config --get oh-my-zsh.hide-dirty)" != "1" ]]; then |
|
|
|
|
if [[ "${DISABLE_UNTRACKED_FILES_DIRTY:-}" == "true" ]]; then |
|
|
|
|
FLAGS+='--untracked-files=no' |
|
|
|
|
fi |
|
|
|
|
case "${GIT_STATUS_IGNORE_SUBMODULES:-}" in |
|
|
|
|
git) |
|
|
|
|
# let git decide (this respects per-repo config in .gitmodules) |
|
|
|
|
;; |
|
|
|
|
*) |
|
|
|
|
# if unset: ignore dirty submodules |
|
|
|
|
# other values are passed to --ignore-submodules |
|
|
|
|
FLAGS+="--ignore-submodules=${GIT_STATUS_IGNORE_SUBMODULES:-dirty}" |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
STATUS=$(__git_prompt_git status ${FLAGS} 2> /dev/null | tail -n 1) |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
case "${GIT_STATUS_IGNORE_SUBMODULES:-}" in |
|
|
|
|
git) |
|
|
|
|
# let git decide (this respects per-repo config in .gitmodules) |
|
|
|
|
;; |
|
|
|
|
*) |
|
|
|
|
# if unset: ignore dirty submodules |
|
|
|
|
# other values are passed to --ignore-submodules |
|
|
|
|
FLAGS+="--ignore-submodules=${GIT_STATUS_IGNORE_SUBMODULES:-dirty}" |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
STATUS=$(__git_prompt_git status ${FLAGS} 2> /dev/null | tail -n 1) |
|
|
|
|
if [[ -n "$STATUS" ]]; then |
|
|
|
|
if [[ -n $STATUS ]]; then |
|
|
|
|
echo "$ZSH_THEME_GIT_PROMPT_DIRTY" |
|
|
|
|
else |
|
|
|
|
echo "$ZSH_THEME_GIT_PROMPT_CLEAN" |
|
|
|
|
|