linux上设置git高亮

 公司的测试环境没有配置cicd,每次只能自己去服务器上拉取代码,编译开发,吐槽一下,比较难用。而且我们的测试服务器的终端也是全黑的,很难用,前期项目开发比较紧张,没有时间搞这个,忍了,最近稍微好点了,还是别将就了,改一下吧。这块儿知识很少用,之前做过类似的工作,但是忘完了,这次重新走了一遍,记录一下。

当前效果是

  当前整个屏幕都是黑白的,看起来很不舒服,路径显示的只是当前路径,也不是全路径,git status等也没有彩色。

[dev@ksearch-test1 test]$
[dev@ksearch-test1 test]$ cd /deploy/test/
[dev@ksearch-test1 test]$ pwd
/deploy/test

想要达到的效果是

并且git status对应的能够进行高亮显示

处理逻辑

主体的方式一般都是通过PS1这种环境变量来实现

查了一下,git的官方有一个实现。基本的实现shell是

# git 设置
source /xxxx/git-completion.bash
GIT_PS1_SHOWDIRTYSTATE=true
GIT_PS1_SHOWCOLORHINTS=true
source /xxxx/git-prompt.sh
PROMPT_COMMAND='__git_ps1 "[\t][\u@\h:\w]" "\\\$ "'

但是这样的话分支高亮了,但是前面的路径没有高亮,效果差那么一点点。

这里的实现是通过PROMPT_COMMANDPROMPT_COMMAND是一个特殊的变量,会在PS1,PS2,PS3,PS4之前执行,所以可以用它来设置这些PS,__git_ps1是在git-prompt.sh中设置的一个函数。翻开了一下对应的函数,其中确实有对PS1的设置,修改一下对应的设置。总共有两处。

PS1="$ps1pc_start$ps1pc_end"
PS1="$ps1pc_start$gitstring$ps1pc_end"

修改为

PS1="\[\e[35;1m\]$ps1pc_start\[\e[0m\]$ps1pc_end"
PS1="\[\e[35;1m\]${ps1pc_start}\[\e[0m\]$gitstring$ps1pc_end"

这个颜色设置完变成了紫色,感觉不是很好看,最终选择了青绿色,看起来更舒服

PS1="\[\e[36;1m\]$ps1pc_start\[\e[0m\]$ps1pc_end"
PS1="\[\e[36;1m\]${ps1pc_start}\[\e[0m\]$gitstring$ps1pc_end"

接着设置git

git config --global color.status auto

于是就都变成带颜色的了,这里可能对于颜色设置有点疑问

颜色设置

PS1设置字符颜色的格式为:

\[\e[F;Bm\].....\[\e[0m\]
或者
\[\033[F;Bm\].....\[\033[0m\]

其中“F”为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,[\e[0m] 结束颜色设定。
“B”还可以设置其他格式,例如为1时,将显示加亮加粗的文字,详见下表

F 字体颜色 B 背景颜色 颜色 B 其他格式 其他格式的含义
30 40 黑色 代码 含义
31 41 红色 0 OFF
32 42 绿色 1 高亮显示
33 43 黄色 4 underline
34 44 蓝色 5 闪烁
35 45 紫红色 7 反白显示
36 46 青蓝色 8 不可见
37 47 白色

linux上设置git高亮相关推荐

  1. linux上使用git把代码push到gitee上

    欢迎大家关注笔者,你的关注是我持续更博的最大动力 原创文章,转载告知,盗版必究 linux上使用git把代码push到gitee上 文章目录: 1 git添加ssh公钥 2 代码推送的流程 从git的 ...

  2. linux设置默认终端模拟器,ubuntu终端默认设置_在Ubuntu Linux上设置默认终端模拟器...

    ubuntu终端默认设置_在Ubuntu Linux上设置默认终端模拟器 ubuntu终端默认设置_在Ubuntu Linux上设置默认终端模拟器 ubuntu终端默认设置 Ubuntu has a ...

  3. linux安装Git依赖的包出错,技术|Linux有问必答:如何在Linux上安装Git

    问题: 我尝试从一个Git公共仓库克隆项目,但出现了这样的错误提示:"git: command not found". 请问我该如何在某某发行版上安装Git? Git是一个流行的开 ...

  4. Linux中设置Git显示颜色

    在linux中git安装后颜色是不自动设置的 下面的命令设置git的颜色: git config --global color.status auto git config --global colo ...

  5. Linux上安装git

    两种方式,一.yum安装:二.从github上下载最新的源码编译后安装 第一种: 在linux上使用yum安装git,命令:yum -y install git 安装完之后,可以通过命令git --v ...

  6. mysql在linux上设置远程访问

    linux上的mysql开启远程访问 1.启动mysql服务 在mysql的bin目录下输入./mysqld_safe & 在后台开启mysql服务 登录mysql mysql -uroot ...

  7. 如何在Debian Linux上设置静态IP地址

    目的 目标是在Debian Linux服务器上配置静态IP地址. 请注意,对于桌面安装,建议使用GUI工具,例如network-manager.如果您希望通过/etc/network/interfac ...

  8. oracle 设置 shmmax,安装ORACLE时在Linux上设置内核参数的含义

    前两天看到一篇Redhat官方的Oracle安装文档,对于Linux内核参数的修改描述的非常清晰. 安装Oracle之前,除了检查操作系统的硬件和软件是否满足安装需要之外,一个重点就是修改内核参数,其 ...

  9. linux中设置gvim高亮光标所在行和所在列

    使用vim在写东西的时候,要经常移动光标,但是光标太小了,跳 来跳去有时候不知道跳都什么地方去了,所以如果可以高亮光标所 在的行列,这样不管光标怎么移动都能轻松的找到,是不是很cool. 基本设置 设 ...

最新文章

  1. Tree-Structured LSTM模型
  2. 【已解决】TypeError: ‘<‘ not supported between instances of ‘str‘ and ‘int‘_Python系列学习笔记
  3. WGho_Setup 雨林木风 一键备份
  4. 数据3分钟丨Snowflake获“2021 DBMS”;OceanBase社区版3.1.2正式发布
  5. Qt4_有注解的地图程序
  6. Arduino IDE和ArduBlock 的下载安装
  7. 不要网上乱拷贝代码了!一段网上找的代码把公司服务器崩了!
  8. Java---设计【员工工资管理系统】
  9. C 语言编码规范(MISRA-C-:2004)
  10. 数据结构 将两个有序的链表合并为一个新链表
  11. libvlc外用api
  12. 主板aspm关闭_【装机加人品】主板如何开启与关闭超线程技术?
  13. 2021-2027全球与中国功能性涂层复合材料市场现状及未来发展趋势
  14. 【C】求函数的定积分
  15. C语言,百马百担暴力秒懂,有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,要求一次性驮完,请问大马、中马、小马各几匹?
  16. linux计划任务如何关闭程序,Linux进程控制和计划任务管理
  17. 英语人机考试计算机算分吗,过来人跟你说说英语人机对话考试的经验
  18. 基于java前行国家公务员模拟笔试系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
  19. 朴素贝叶斯分类器简单实例
  20. mindjet使用技巧

热门文章

  1. 事件通知方式实现的重叠I/O模型
  2. 精美技术图赏|技术精华
  3. 建议收藏 | 全面解析 50+条 SQL 语句性能优化策略
  4. IntelliJ IDEA 2019从入门到癫狂 图文教程
  5. Spotify是如何调整CDN服务来实现闪电般的快速流媒体体验
  6. 2019年低延迟直播技术展望
  7. 业界首创,腾讯网络平台部实现大规模光网络实时管控系统TOOP
  8. 从入门到掉坑:Go 内存池/对象池技术介绍
  9. 2017第四季度移动行业数据报告
  10. [ffmpeg] 解码API