Skip to content

Instantly share code, notes, and snippets.

@eliotsykes
Last active May 30, 2025 08:07
Show Gist options
  • Save eliotsykes/47516b877f5a4f7cd52f to your computer and use it in GitHub Desktop.
Save eliotsykes/47516b877f5a4f7cd52f to your computer and use it in GitHub Desktop.
Git Aware Bash Prompt

In Terminal

mkdir ~/.bash

Copy the raw git-prompt.sh file from git contrib in to the ~/.bash directory: https://github.com/git/git/blob/master/contrib/completion/git-prompt.sh

Inside ~/.bashrc or ~/.bash_profile (choose the file where you normally put any bash customizations/setup), add the lines:

source ~/.bash/git-prompt.sh # Show git branch name at command prompt
export GIT_PS1_SHOWCOLORHINTS=true # Option for git-prompt.sh to show branch name in color

# Terminal Prompt:
# Include git branch, use PROMPT_COMMAND (not PS1) to get color output (see git-prompt.sh for more)
export PROMPT_COMMAND='__git_ps1 "\w" "\n\\\$ "' # Git branch (relies on git-prompt.sh)

As long as you're inside a git repo, your Bash prompt should now show the current git branch in color signifying if its got uncommitted changes.

Copy link

ghost commented Jun 26, 2019

why does this remove my actual directory path along with my virtualenv name, now I am only left with $ in my prompt. any way to fix it?

@AlexRuizE
Copy link

works great!

@alfredoh1234
Copy link

Very happy with it!
Thanks!

@wangyu-okta
Copy link

This has worked well for a while, until recently when it significantly slows down everything - eg, when I "more PATH/TO/any-file", then "q" to quit - the quitting takes 5 seconds!!! Everything starts to take long.
It might not be the issue with this tool itself - but I do not have to have my prompt show me the GIT info. Hence I just disabled it :(

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