diff --git a/lib/git.zsh b/lib/git.zsh index 1b68fcb73..5d7b76666 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -78,11 +78,12 @@ function git_prompt_long_sha() { git_prompt_status() { INDEX=$(command git status --porcelain -b 2> /dev/null) STATUS="" - $(git diff --no-ext-diff --quiet --exit-code) || STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_MODIFIED" repo_info=$(git rev-parse --git-dir --is-inside-git-dir --is-bare-repository --is-inside-work-tree --short HEAD 2>/dev/null) - if [ $? -eq 0 ]; then - $(git diff-index --cached --quiet HEAD --) || STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_ADDED" + if [ -z $repo_info ]; then + return fi + $(git diff --no-ext-diff --quiet --exit-code) || STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_MODIFIED" + $(git diff-index --cached --quiet HEAD --) || STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_ADDED" if $(git ls-files --others --exclude-standard --error-unmatch -- ':/*' >/dev/null 2>/dev/null); then STATUS="$STATUS$ZSH_THEME_GIT_PROMPT_UNTRACKED" fi