Bash-Prompt for Git

Since Florian Hopf asked me today how I made my Bash prompt show the current git branch, here’s the relevant .bashrc part (which evloved from code found on some other blogs I don’t remember anymore).

function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
function promptl {
local        BLUE="\[\033[0;34m\]"
local         RED="\[\033[0;31m\]"
local   LIGHT_RED="\[\033[1;31m\]"
local       GREEN="\[\033[0;32m\]"
local LIGHT_GREEN="\[\033[1;32m\]"
local       WHITE="\[\033[1;37m\]"
local  LIGHT_GRAY="\[\033[0;37m\]"
case $TERM in
xterm*)
TITLEBAR='\[\033]0;\u@\h:\w\007\]'
;;
*)
TITLEBAR=""
;;
esac
PS1="${TITLEBAR}\
$BLUE[$RED\$(date +%H:%M)$BLUE]\
$BLUE[$RED\u@\h:\w$GREEN\$(parse_git_branch)$BLUE]\
$GREEN\$ $LIGHT_GRAY"
PS2='> '
PS4='+ '
}
promptl

Feel free to copy into your .bashrc to have a colored prompt showing the current git branch if you are in a git repository.

Kommentare

  1. I updated the post and added a screenshot.

  2. Please provide an example of the result as screenshot.