当前位置: 首页 > article >正文

mac终端配置-支持 git branch

mac 终端一般使用的是 zsh;
由于不想安装三方的软件,可以自行编写脚本实现一些效果;
最终效果如下,支持显示git 分支:
在这里插入图片描述

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 的函数
update_prompt() {
        export PS1="%10F%m%f:%11F%1~%f$(git_branch)
\$ "
}
# 使用 precmd 钩子,在每次命令执行后更新 PS1
autoload -Uz add-zsh-hook
add-zsh-hook precmd update_prompt

http://www.kler.cn/a/410253.html

相关文章:

  • .net core MVC入门(一)
  • 鸿蒙NEXT开发案例:字数统计
  • 智能显示屏插座:能否成为家庭用电安全的守护天使?
  • 在ASP.NET Core WebAPI 中使用轻量级的方式实现一个支持持久化的缓存组件
  • Python办公自动化案例:将演示文稿批量导出为图片和PDF文件
  • 微信小程序与公众号关联(同一主体),获取unionId并关联公众号openid
  • 数字图像处理(4):FPGA中的定点数、浮点数
  • wsl2的Ubuntu18.04安装ros和anaconda
  • 后端开发详细学习框架与路线
  • 基于python的机器学习(三)—— 关联规则与推荐算法
  • 3D可视化产品定制,打造“所见即所得”的购物体验!
  • FPGA实现串口升级及MultiBoot(九)BPI FLASH相关实例演示
  • sql工具!好用!爱用!
  • Css—实现3D导航栏
  • conda下载与pip下载的区别
  • 丹摩征文活动|实现Llama3.1大模型的本地部署
  • 第三十八章 IOT 通信协议MQTT协议实现的中间件EMQXDocker安装与验证指南
  • 系统使用杂记
  • 一文理解 Python 编程语言中的 .strip() 方法
  • python oa服务器巡检报告脚本的重构和修改(适应数盾OTP)有空再去改
  • 制造系统中ERP系统与MES管理系统的区别
  • centos为用户赋予sudo权限
  • 设计模式——简单工厂模型、工厂模式、抽象工厂模式、单例模式、代理模式、模板模式
  • 一台电脑最多支持几个分区
  • 一文详解安全分析方法STPA:以自动紧急制动系统(AEB)为例
  • 一键部署 200+ 开源软件的 Websoft9 面板,Github 2k+ 星星