> @@ -1779,6 +1780,31 @@ static void wt_shortstatus_print_tracking(struct wt_status *s) > } > > color_fprintf(s->fp, header_color, "]"); > + > + inprogress: > + if (!s->show_inprogress) > + goto conclude; > + memset(&state, 0, sizeof(state)); > + wt_status_get_state(&state, > + s->branch && !strcmp(s->branch, "HEAD")); > + if (state.merge_in_progress) > + color_fprintf(s->fp, header_color, "; %s", LABEL(N_("MERGING"))); > + else if (state.am_in_progress) > + color_fprintf(s->fp, header_color, "; %s", LABEL(N_("AM"))); > + else if (state.rebase_in_progress) > + color_fprintf(s->fp, header_color, "; %s", LABEL(N_("REBASE-m"))); > + else if (state.rebase_interactive_in_progress) > + color_fprintf(s->fp, header_color, "; %s", LABEL(N_("REBASE-i"))); > + else if (state.cherry_pick_in_progress) > + color_fprintf(s->fp, header_color, "; %s", LABEL(N_("CHERRY-PICKING"))); > + else if (state.revert_in_progress) > + color_fprintf(s->fp, header_color, "; %s", LABEL(N_("REVERTING"))); > + if (state.bisect_in_progress) else if? > + color_fprintf(s->fp, header_color, "; %s", LABEL(N_("BISECTING"))); > + free(state.branch); > + free(state.onto); > + free(state.detached_from); > + > conclude: > fputc(s->null_termination ? '\0' : '\n', s->fp); > } This reminded me of a patch that I have been using for almost two years now... git-prompt.sh's similar long conditional chain to show the ongoing operation has an else-branch at the end showing "AM/REBASE". Your patch doesn't add an equivalent branch. Is this intentional or an oversight? I suppose it's intentional, because that "AM/REBASE" branch in the prompt seems to be unreachable (see below), but I never took the effort to actually check that (hence the "seems" and that's why I never submitted it). -- >8 -- Subject: [PATCH] bash prompt: remove unreachable ongoing "AM/REBASE" fallback Back in the day it was impossible to tell an ongoing 'am' and "plain" 'rebase' (i.e. non-interactive, non-merge) apart, thus the prompt displayed "AM/REBASE" in those cases, see e75201963 (Improve bash prompt to detect various states like an unfinished merge, 2007-09-30). Later 3041c3243 (am: --rebasing, 2008-03-04) made it possible to tell those cases apart and made __git_ps1() use this right away to display either "AM" or "REBASE", respectively. However, it left that "AM/REBASE" in an else-branch as a fallback, but it seems to have been impossible to reach even back then. This ancient unreachable else-branch has survived to this day, remove it finally. Signed-off-by: SZEDER Gábor <szeder.dev@xxxxxxxxx> --- contrib/completion/git-prompt.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/contrib/completion/git-prompt.sh b/contrib/completion/git-prompt.sh index c6cbef38c..d13af41f2 100644 --- a/contrib/completion/git-prompt.sh +++ b/contrib/completion/git-prompt.sh @@ -411,8 +411,6 @@ __git_ps1 () r="|REBASE" elif [ -f "$g/rebase-apply/applying" ]; then r="|AM" - else - r="|AM/REBASE" fi elif [ -f "$g/MERGE_HEAD" ]; then r="|MERGING" -- 2.12.2.613.g9c5b79913