|
@@ -84,6 +84,10 @@
|
|
|
# single '?' character by setting GIT_PS1_COMPRESSSPARSESTATE, or omitted
|
|
|
# by setting GIT_PS1_OMITSPARSESTATE.
|
|
|
#
|
|
|
+# If you would like to see a notification on the prompt when there are
|
|
|
+# unresolved conflicts, set GIT_PS1_SHOWCONFLICTSTATE to "yes". The
|
|
|
+# prompt will include "|CONFLICT".
|
|
|
+#
|
|
|
# If you would like to see more information about the identity of
|
|
|
# commits checked out as a detached HEAD, set GIT_PS1_DESCRIBE_STYLE
|
|
|
# to one of these values:
|
|
@@ -96,9 +100,7 @@
|
|
|
#
|
|
|
# If you would like a colored hint about the current dirty state, set
|
|
|
# GIT_PS1_SHOWCOLORHINTS to a nonempty value. The colors are based on
|
|
|
-# the colored output of "git status -sb" and are available only when
|
|
|
-# using __git_ps1 for PROMPT_COMMAND or precmd in Bash,
|
|
|
-# but always available in Zsh.
|
|
|
+# the colored output of "git status -sb".
|
|
|
#
|
|
|
# If you would like __git_ps1 to do nothing in the case when the current
|
|
|
# directory is set up to be ignored by git, then set
|
|
@@ -255,12 +257,12 @@ __git_ps1_colorize_gitstring ()
|
|
|
local c_lblue='%F{blue}'
|
|
|
local c_clear='%f'
|
|
|
else
|
|
|
- # Using \[ and \] around colors is necessary to prevent
|
|
|
+ # Using \001 and \002 around colors is necessary to prevent
|
|
|
# issues with command line editing/browsing/completion!
|
|
|
- local c_red='\[\e[31m\]'
|
|
|
- local c_green='\[\e[32m\]'
|
|
|
- local c_lblue='\[\e[1;34m\]'
|
|
|
- local c_clear='\[\e[0m\]'
|
|
|
+ local c_red=$'\001\e[31m\002'
|
|
|
+ local c_green=$'\001\e[32m\002'
|
|
|
+ local c_lblue=$'\001\e[1;34m\002'
|
|
|
+ local c_clear=$'\001\e[0m\002'
|
|
|
fi
|
|
|
local bad_color=$c_red
|
|
|
local ok_color=$c_green
|
|
@@ -508,6 +510,12 @@ __git_ps1 ()
|
|
|
r="$r $step/$total"
|
|
|
fi
|
|
|
|
|
|
+ local conflict="" # state indicator for unresolved conflicts
|
|
|
+ if [[ "${GIT_PS1_SHOWCONFLICTSTATE}" == "yes" ]] &&
|
|
|
+ [[ $(git ls-files --unmerged 2>/dev/null) ]]; then
|
|
|
+ conflict="|CONFLICT"
|
|
|
+ fi
|
|
|
+
|
|
|
local w=""
|
|
|
local i=""
|
|
|
local s=""
|
|
@@ -564,15 +572,12 @@ __git_ps1 ()
|
|
|
b="\${__git_ps1_branch_name}"
|
|
|
fi
|
|
|
|
|
|
- # NO color option unless in PROMPT_COMMAND mode or it's Zsh
|
|
|
if [ -n "${GIT_PS1_SHOWCOLORHINTS-}" ]; then
|
|
|
- if [ $pcmode = yes ] || [ -n "${ZSH_VERSION-}" ]; then
|
|
|
- __git_ps1_colorize_gitstring
|
|
|
- fi
|
|
|
+ __git_ps1_colorize_gitstring
|
|
|
fi
|
|
|
|
|
|
local f="$h$w$i$s$u$p"
|
|
|
- local gitstring="$c$b${f:+$z$f}${sparse}$r${upstream}"
|
|
|
+ local gitstring="$c$b${f:+$z$f}${sparse}$r${upstream}${conflict}"
|
|
|
|
|
|
if [ $pcmode = yes ]; then
|
|
|
if [ "${__git_printf_supports_v-}" != yes ]; then
|