Re: [PATCH] completion: fix PS1 display during a merge on detached HEAD
Junio C Hamano <gitster@pobox.com> wrote:
Show 11 quoted lines
> If your merge stops in a conflict while on a detached HEAD, recent
> completion code fails to show anything. This was because various cases
> added to support the operation-in-progress markers (e.g. REBASE, MERGING)
> forgot that they need to set the variable "b" to something for the result
> they computed to be displayed at all.
>
> Probably not many people make trial merges on a detached HEAD (which is
> tremendously useful feature of git, by the way), and that may be why this
> was not noticed for a long time.
>
> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Yay, thanks Junio.
Trivially-Acked-By: Shawn O. Pearce <spearce@spearce.org>
:-)
Show 18 quoted lines
> diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
> index ad26b7c..4462ef0 100755
> --- a/contrib/completion/git-completion.bash
> +++ b/contrib/completion/git-completion.bash
> @@ -99,10 +99,10 @@ __git_ps1 ()
> elif [ -d "$g/rebase-merge" ]; then
> r="|REBASE-m"
> b="$(cat "$g/rebase-merge/head-name")"
> - elif [ -f "$g/MERGE_HEAD" ]; then
> - r="|MERGING"
> - b="$(git symbolic-ref HEAD 2>/dev/null)"
> else
> + if [ -f "$g/MERGE_HEAD" ]; then
> + r="|MERGING"
> + fi
> if [ -f "$g/BISECT_LOG" ]; then
> r="|BISECTING"
> fi
--
Shawn.