shell上显示当前git分支

在当前终端上显示当前所在的分支,能够提供极大的便利。

修改bash的配置

~/.bash_profile 或者~/.bashrc

原版

1
2
3
4
5
6
7
8
9

function git-branch-name {
git symbolic-ref HEAD 2>/dev/null | cut -d"/" -f 3
}
function git-branch-prompt {
local branch=`git-branch-name`
if [ $branch ]; then printf " [%s]" $branch; fi
}
PS1="\u@\h \[\033[0;36m\]\W\[\033[0m\]\[\033[0;32m\]\$(git-branch-prompt)\[\033[0m\] \$ "

修改版

1
2
3
4
5
6
7
8
9
# terminal-prompt-display-what-branch-you-are-currently-on
function git-branch-name {
git symbolic-ref --short -q HEAD 2>/dev/null
}
function git-branch-prompt {
local branch=`git-branch-name`
if [ $branch ]; then printf " [%s]" $branch; fi
}
PS1="\u@\h \[\033[0;36m\]\W\[\033[0m\]\[\033[0;32m\]\$(git-branch-prompt)\[\033[0m\] \$ "

把上面的脚步添加到shell配置文件中。

1
2
3
# 加载一下配置文件,使之生效
source ~/.bash_profile
# source ~/.bashrc

参考

git-setting-up-a-remote-repository-and-doing-an-initial-push

让 Shell 命令提示符显示 Git 分支名称