Adicionar branch git ao prompt do bash [duplicar]

Aug 28 2020

Estou tentando adicionar meu branch git atual ao prompt do terminal bash. Copiei este arquivo:https://github.com/git/git/blob/master/contrib/completion/git-prompt.sh ao meu diretório inicial e esta é a parte de .bashrc relacionada ao meu prompt:

source ~/.git-prompt.sh

if [ "$color_prompt" = yes ]; then PS1='${debian_chroot:+($debian_chroot)}\[\033[32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00;31m\] \W$(__git_ps1 " (%s)")\[\033[00m\]\$ ' else PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\ \W$(__git_ps1 " (%s)")$ '
fi

No entanto, \ W $ (__ git_ps1 "(% s)") está retornando a pasta atual e o branch, e retorna o diretório atual quando não estiver em um repositório.

É possível fazer com que ele exiba apenas o branch atual quando estiver em um repositório e quando não estiver em um, não exibir nada?

Respostas

1 Overfront64 Aug 28 2020 at 03:23

Descobri que o \ W estava inserindo o diretório atual que não foi comentado no código-fonte ou em qualquer lugar onde as pessoas estivessem falando sobre implementações. Eu corrigi isso:

PS1='${debian_chroot:+($debian_chroot)}\[\033[32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00;31m\]$(__git_ps1 " (%s)")\[\033[00m\]\$ '