From b874b7563edae05ad0a3eca44deabb635b54b74c Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Thu, 25 Apr 2013 23:33:43 +0100 Subject: [PATCH] Update and simplify dirty feature so it detects untracked files again --- prompt.sh | 26 ++++---------------------- 1 file changed, 4 insertions(+), 22 deletions(-) diff --git a/prompt.sh b/prompt.sh index eedc511..2367970 100644 --- a/prompt.sh +++ b/prompt.sh @@ -13,29 +13,11 @@ find_git_branch() { } find_git_dirty() { - if [[ -z "$git_branch" ]] - then - git_dirty='' + local status=$(git status --porcelain 2> /dev/null) + if [[ "$status" != "" ]]; then + git_dirty='*' else - # Based on: http://stackoverflow.com/a/2659808/170413 - local err - if err=$(git diff-files --quiet 2>&1) - then - if git diff-index --quiet --cached HEAD - then - git_dirty='' - else - # Can't figure out different colors - git_dirty="^" - fi - elif [ -n "$err" ] - then - # Some error - most likely that it was run within $GIT_DIR - # Resolve repo root instead? `git rev-parse --git-dir` does not work, nor does the 'git root' alias trick - git_dirty="" - else - git_dirty="*" - fi + git_dirty='' fi }