Linux 终端显示 Git 当前所在分支

一、前置预备知识

PS1是Linux终端用户的一个环境变量,用来定义命令行提示符的参数。

    在~/.bashrc中修改PS1的环境变量可以修改主机提示符

    常规设置参数

    PS1是主提示符变量,也是默认提示符变量。默认值[\u@\h \W]\$,显示用户主机名称工作目录。

    基本上通过设置PS1来定义命令行提示字符即可,最常用的需求就是显示登录的用户名、主目录、主机名等等。

        $export PS1='[\u@\h \W]\$ \n\$'
        [yupei.syp@i22d01224 model]$
        $

    PS1变量可以使用的参数值有如下:

参数    描述
/d    代表日期,格式为weekday month date,例如:”Mon Aug 1”
/H    完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
/h    仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
/t    显示时间为24小时格式,如:HH:MM:SS
/T    显示时间为12小时格式
/A    显示时间为24小时格式:HH:MM
/u    当前用户的账号名称
/v    BASH的版本信息
/w    完整的工作目录名称。家目录会以 ~代替
/W    利用basename取得工作目录名称,所以只会列出最后一个目录
/#    下达的第几个命令
/$    提示字符,如果是root时,提示符为:# ,普通用户则为:$
/[    字符”[“
/]    字符”]”
/!    命令行动态统计历史命令次数

    PS1颜色设置参数

    在PS1中设置字符颜色的格式为:\[\e[F;Bm\]........\[\e[0m\] 其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,\[\e[0m\]作为颜色设定的结束。
     
    颜色对照表:
     
            F    B
     
    30  40 黑色
     
    31  41 红色
     
    32  42 绿色
     
    33  43 黄色
     
    34  44 蓝色
     
    35  45 紫红色
     
    36  46 青蓝色
     
    37  47 白色
     
    只需将对应数字套入设置格式中即可。
    比如要设置命令行的格式为绿字黑底(\[\e[32;40m\]),显示当前用户的账号名称(\u)、主机的第一个名字(\h)、完整的当前工作目录名称(\w)、24小时格式时间(\t),可以直接在命令行键入如下命令:

    $export  PS1='[\[\e[32;40m\]\u@\h \w \t]$ \[\e[0m\]'    
    [yupei.syp@i22d01224 ~/wly.dev/model 09:46:47]$

 
二、显示git分支提示

    基于上面PS1的基础知识进行配置PS1的设置,如下

    function git_branch {
      branch="`git branch 2>/dev/null | grep "^\*" | sed -e "s/^\*\ //"`"
      if [ "${branch}" != "" ];then
        if [ "${branch}" = "(no branch)" ];then
          branch="(`git rev-parse --short HEAD`...)"
        fi
        echo " → $branch"
      fi
    }
    PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\[\033[01;32m\]$(git_branch)\[\033[00m\]\n\$'

    效果图


————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/yupei881027/article/details/111352991

相关推荐

  1. Linux 终端显示 Git 当前分支

    2024-04-11 19:04:01       13 阅读
  2. MacOS 终端显示 Git 分支的名称

    2024-04-11 19:04:01       47 阅读
  3. git 基于当前分支创建新分支

    2024-04-11 19:04:01       15 阅读
  4. git将其他分支的提交合并到当前分支

    2024-04-11 19:04:01       36 阅读
  5. git 合并当前分支到 指定仓库的指定分支

    2024-04-11 19:04:01       18 阅读
  6. git merge 命令合并指定分支当前分支

    2024-04-11 19:04:01       11 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-11 19:04:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-11 19:04:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-11 19:04:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-11 19:04:01       20 阅读

热门阅读

  1. Open CASCADE学习|迭代NCollection_Sequence<gp_Pnt>

    2024-04-11 19:04:01       14 阅读
  2. npm常用命令详细介绍

    2024-04-11 19:04:01       15 阅读
  3. 运维记录 会产生无用日志的服务器

    2024-04-11 19:04:01       16 阅读
  4. spring事务问题的解决和处理

    2024-04-11 19:04:01       16 阅读
  5. 【数学建模】通过调整飞行角度使飞机顺利飞行

    2024-04-11 19:04:01       22 阅读
  6. MySQL的sql_mode模式简介

    2024-04-11 19:04:01       17 阅读
  7. 小红书12大限流原因

    2024-04-11 19:04:01       17 阅读
  8. Python 爬虫基础:利用 BeautifulSoup 解析网页内容

    2024-04-11 19:04:01       18 阅读
  9. Kolla-ansible部署OpenStack集群

    2024-04-11 19:04:01       13 阅读
  10. 字符串判等 51Nod-3288 2024年4月10日

    2024-04-11 19:04:01       14 阅读