让 shell(bash) 命令行显示当前 git 的分支名称

时间:2023-12-24 15:02:37

早上测试脚本的时候,偶然在这篇文章《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 "" ] ; 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)

如果报错如下信息

sh: __git_ps1: command not found的解决办法

请参照我的另一篇博文解决 http://www.cnblogs.com/tang9018/p/7390262.html