Skip to content

Instantly share code, notes, and snippets.

@alispat
Forked from ankurk91/bash_profile.md
Created April 8, 2019 12:58
Show Gist options
  • Save alispat/46503e115d3d7d0f714ae566ec1d3d2b to your computer and use it in GitHub Desktop.
Save alispat/46503e115d3d7d0f714ae566ec1d3d2b to your computer and use it in GitHub Desktop.
:octocat: Git branch name in Linux/Mac Terminal

Mac OS : Show your git branch name on your terminal

Add these lines in your ~/.bash_profile file

# Show current git branch name
parse_git_branch() {
     git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
export PS1="\u@\h \[\033[32m\]\w\[\033[33m\]\$(parse_git_branch)\[\033[00m\] $ "

Alternate approach - Don't show full path

# Git branch in prompt.
parse_git_branch() {
    git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
export PS1="\u@\h \W\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ "
  • Quit and re-open your terminal , cd to a git repo folder

Tested on macOS Sierra/High Sierra/Mojave (default terminal)

Source, Source2

Ubuntu: Show your git branch name on your terminal

Add these lines in your ~/.bashrc file

# Show git branch name
force_color_prompt=yes
color_prompt=yes
parse_git_branch() {
 git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
if [ "$color_prompt" = yes ]; then
 PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(parse_git_branch)\[\033[00m\]\$ '
else
 PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$(parse_git_branch)\$ '
fi
unset color_prompt force_color_prompt

  • Close and re-open your gnome-terminal , cd to a git repo folder

Source

Tested on Ubuntu 14.04, 16.04, 18.04 on gnome terminal, eOS 0.4.1/5.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment