Embed URL


SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

Git branch and dirty state in Bash prompt.

View .bashrc
1 2 3 4 5 6 7 8 9 10 11 12
# username@Machine ~/dev/dir[master]$ # clean working directory
# username@Machine ~/dev/dir[master*]$ # dirty working directory
function parse_git_dirty {
[[ $(git status 2> /dev/null | tail -n1) != "nothing to commit (working directory clean)" ]] && echo "*"
function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/[\1$(parse_git_dirty)]/"
export PS1='\u@\h \[\033[1;33m\]\w\[\033[0m\]$(parse_git_branch)$ '
xbx commented

git status --porcelain

Nice. How can I change the color of the branch to maybe light green?


@Banta Use ANSI color escape sequences:

thanks for this! my version of git prints out "nothing to commit, working directory clean", so change that string if your dirty checking isn't working.

adeelx commented

Change nothing to commit (working directory clean) to nothing to commit, working directory clean if you're getting a persistent * even if your working directory is clean.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.