Skip to content

Instantly share code, notes, and snippets.

@richarddong
Forked from henrik/.bashrc
Created March 5, 2012 22:16
Show Gist options
  • Save richarddong/1981545 to your computer and use it in GitHub Desktop.
Save richarddong/1981545 to your computer and use it in GitHub Desktop.
Ubuntu Bash 提示中显示 git 当前分支和状态
# Ubuntu 中 Terminal 下 Bash 提示中显示 git 当前分支和状态
# username@hostname:directory[branch-name]$ # 干净的工作目录
# username@hostname:directory[branch-name*]$ # 不干净的工作目录
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:\w\[\e[1;36m\]$(parse_git_branch)\[\e[0m\]$ '
@kdstarter
Copy link

命令替换需要被转义, 改成\$(parse_git_branch),这样会在每次提示符显示的时候都会更新一次该命令的值。

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