Skip to content

Instantly share code, notes, and snippets.

@justintv
Created August 17, 2009 00:53
Show Gist options
  • Save justintv/168835 to your computer and use it in GitHub Desktop.
Save justintv/168835 to your computer and use it in GitHub Desktop.
Display git branch in bash prompt
# If you work with git, you've probably had that nagging sensation of not knowing what branch you are on. Worry no longer!
export PS1="\\w:\$(git branch 2>/dev/null | grep '^*' | colrm 1 2)\$ "
# This will change your prompt to display not only your working directory but also your current git branch, if you have one. Pretty nifty!
# ~/code/web:beta_directory$ git checkout master
# Switched to branch "master"
# ~/code/web:master$ git checkout beta_directory
# Switched to branch "beta_directory"
# ~/code/web:beta_directory$
@ContbustableLemon
Copy link

image Notice the squares at the start of the lines, why am I getting those ?

I love it otherwise

What is this for?

@harshakp06
Copy link

PS1="\[\e[0;1;34m\]\W \[\e[0;1;33m\]\$(git branch 2>/dev/null | grep '^*' | colrm 1 2)\[\e[0;7;0;37m\]$ "

Try this, for minimal text on terminal, with present working directory in blue and branch in yellow color

@hansfn
Copy link

hansfn commented Mar 25, 2024

[...] git branch 2>/dev/null | grep '^*' | colrm 1 2 [...]

Or with a newer Git:

git branch --show-current 2>/dev/null

It's not shorter, but easier to understand ;-)

@harshakp06
Copy link

git branch --show-current 2>/dev/null

Is not working with newer git

@hansfn
Copy link

hansfn commented Mar 26, 2024

This has been supported since at least Git 2.28.0, but let us not spend any more time on this. Your solution works for all versions :-)

@mzinternallab
Copy link

PS1='[\033[0;32m][\033[0m\033[0;32m]\u[\033[0;36m] @ [\033[0;36m]\h \w[\033[0;32m]$(__git_ps1)\n[\033[0;32m]└─[\033[0m\033[0;32m] $[\033[0m\033[0;32m] ▶[\033[0m] '

Excellent! Thanks!

@eabase
Copy link

eabase commented Oct 24, 2024

Great collection!

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