From 286e406f2c5e7e098efdd45c9df1ddfb2ba6b404 Mon Sep 17 00:00:00 2001 From: Tibor Simko Date: Fri, 13 May 2011 03:38:31 +0800 Subject: parse_git_status: recognise "Changes not staged for commit" Recognise "Changes not staged for commit" section when parsing git status. This fixes the display of modified but unstaged files in the prompt when using git v1.7 (e.g. Debian Wheezy). --- git-prompt.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/git-prompt.sh b/git-prompt.sh index 6d000ba..559e3c3 100755 --- a/git-prompt.sh +++ b/git-prompt.sh @@ -444,6 +444,12 @@ parse_git_status() { s/^# unmerged: '"$file_regex"'/ [[ \" ${modified_files[*]} \" =~ \" \1 \" ]] || modified_files[${#modified_files[@]}]=\"\1\"/p } + /^# Changes not staged for commit:/,/^# [A-Z]/ { + s/^# Changes not staged for commit:/modified=modified;/p + s/^# modified: '"$file_regex"'/ [[ \" ${modified_files[*]} \" =~ \" \1 \" ]] || modified_files[${#modified_files[@]}]=\"\1\"/p + s/^# unmerged: '"$file_regex"'/ [[ \" ${modified_files[*]} \" =~ \" \1 \" ]] || modified_files[${#modified_files[@]}]=\"\1\"/p + } + /^# Untracked files:/,/^[^#]/{ s/^# Untracked files:/untracked=untracked;/p s/^# '"$file_regex"'/ [[ \" ${untracked_files[*]} ${modified_files[*]} ${added_files[*]} \" =~ \" \1 \" ]] || untracked_files[${#untracked_files[@]}]=\"\1\"/p -- cgit v1.2.3