Skip to content

Embed URL

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Git branch and dirty state in Bash prompt.
# http://henrik.nyh.se/2008/12/git-dirty-prompt
# http://www.simplisticcomplexity.com/2008/03/13/show-your-git-branch-name-in-your-prompt/
# 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

git status --porcelain

@Banta

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

@henrik
Owner
@sansb

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

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.

@srguiwiz

Thank you. Color coded branch name depending on state at https://gist.github.com/srguiwiz/de87bf6355717f0eede5 , green or red.

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.