让 shell 显示当前 git 的分支名称

早上测试脚本的时候,偶然在这篇文章《Git – setting up a remote repository and doing an initial push》看到一个关于 git 的好玩东西,记录于此。

根据文章的提示在 ~/.bashrc 里添加下面的内容,可以让提示符显示当前 git 的分支名称。我按照自己的习惯修改了提示符的格式。

__mikespook_ps1() {
	local none='\[\033[00m\]'
	local g='\[\033[0;32m\]'
	local c='\[\033[0;36m\]'
	local emy='\[\033[1;33m\]'
	local br='\[\033[1;41m\]'

	local uc=$none
	local p='$'
	if [ $UID -eq "0" ] ; then
    	uc=$CBR 
		p='#'
	fi
	local u="${uc}${debian_chroot:+($debian_chroot)}\u${none}"
	local h="${c}\h${none}:${g}\w${none}"
	echo "$u@$h\$(__git_ps1 '[${emy}%s${none}]')${uc}${p}${none} "
}

export PS1=$(__mikespook_ps1)

这样,就能得到效果:

git-branch-show-in-prompt

Comments

One response to “让 shell 显示当前 git 的分支名称”

  1. emitle Avatar
    emitle

    可以用zsh这个shell,有很多扩展,oh_my_zsh这个配置也很好。

Leave a Reply

Your email address will not be published. Required fields are marked *