ubuntu中如何在vscode的终端目录后显示(当前的git分支名) 实测有用

server/2025/2/11 20:07:45/

效果展示
在这里插入图片描述

配置过程:

Ubuntu 中,如果你想在 VS Code 的终端提示符后显示当前的 Git 分支名,可以通过修改 Shell 配置文件(如 ~/.bashrc~/.zshrc)来实现。以下是具体步骤:


1. 确定使用的 Shell

首先,确认你使用的是哪种 Shell:

  • 如果是 Bash,配置文件是 ~/.bashrc
  • 如果是 Zsh,配置文件是 ~/.zshrc

可以通过以下命令查看当前使用的 Shell:

echo $SHELL

2. 修改 Shell 配置文件

打开对应的配置文件(以 Bash 为例):

nano ~/.bashrc

在文件末尾添加以下代码:

Bash 配置
# 获取当前 Git 分支名
parse_git_branch() {git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}# 设置终端提示符
export PS1="\[\e]0;\u@\h: \w\a\]\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\] \[\033[33m\]\$(parse_git_branch)\[\033[00m\]\$ "
Zsh 配置

如果你使用的是 Zsh,可以添加以下代码:

# 获取当前 Git 分支名
parse_git_branch() {git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}# 设置终端提示符
setopt PROMPT_SUBST
PROMPT='%n@%m:%~ %F{yellow}$(parse_git_branch)%f$ '

3. 使配置生效

保存并退出编辑器后,运行以下命令使配置生效:

source ~/.bashrc  # 如果是 Bash
source ~/.zshrc   # 如果是 Zsh

4. 在 VS Code 中查看效果

  1. 打开 VS Code。
  2. 启动终端(快捷键:Ctrl + )。
  3. 进入一个 Git 仓库目录,终端提示符后就会显示当前 Git 分支名。

例如:

user@host:~/project (main)$

5. 自定义提示符样式

你可以根据需要自定义提示符的样式:

  • \u:当前用户名。
  • \h:主机名。
  • \w:当前工作目录。
  • \$(parse_git_branch):显示 Git 分支名。
  • 颜色代码:\[\033[颜色代码m\](Bash)或 %F{颜色}(Zsh)。

例如,将分支名显示为红色:

  • Bash
    export PS1="\[\e]0;\u@\h: \w\a\]\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\] \[\033[31m\]\$(parse_git_branch)\[\033[00m\]\$ "
    
  • Zsh
    PROMPT='%n@%m:%~ %F{red}$(parse_git_branch)%f$ '
    

总结

通过修改 Shell 配置文件,你可以在 VS Code 的终端中显示当前 Git 分支名,方便开发时快速了解代码状态。如果你使用的是其他 Shell(如 Fish),也可以参考类似的方法进行配置。


http://www.ppmy.cn/server/166844.html

相关文章

鸿蒙HarmonyOS NEXT开发:优化复杂UI页面的性能——自定义组件冻结(freezeWhenInactive属性)

文章目录 一、自定义组件冻结1、freezeWhenInactive 二、当前支持的场景1、页面路由2、TabContent3、Navigation4、组件复用 三、限制条件 一、自定义组件冻结 自定义组件冻结功能专为优化复杂UI页面的性能而设计,尤其适用于包含多个页面栈、长列表或宫格布局的场景…

AF3 ExponentialMovingAverage类解读

AlphaFold3 的 ExponentialMovingAverage (EMA) 类,用于维护神经网络模型参数的指数加权移动平均。它可以在训练过程中对模型的参数进行平滑处理,以减缓参数更新的波动,帮助提升模型的泛化能力。 主要功能 EMA 通过对每个参数的移动平均来稳定模型的训练过程。在每一步,参…

【安全帽头盔检测】基于YOLOV11+pytorch+Flask+SpringBoot+Vue+MySQL的安全帽头盔检测识别系统

前言 本系统是一个完整的基于YOLOV11pytorchFlaskSpringBootVueMySQL的安全帽头盔检测识别系统。 可使用YOLOV1-YOLOV11的任意模型进行目标检测。可以检测图片、视频、摄像头三种方式。能够检测出是否佩戴安全帽或头盔。可应用于工地施工现场、工厂安全检查、电瓶车头盔佩戴等…

C# OpenCV机器视觉:对位贴合

在热闹非凡的手机维修街上,阿强开了一家小小的手机贴膜店。每天看着顾客们自己贴膜贴得歪歪扭扭,不是膜的边缘贴不整齐,就是里面充满了气泡,阿强心里就想:“要是我能有个自动贴膜的神器,那该多好啊&#xf…

vue动态table 动态表头数据+动态列表数据

效果图: <template><div style"padding: 20px"><el-scrollbar><div class"scrollbar-flex-content"><div class"opt-search"><div style"width: 100px"> </div><div class"opt-b…

centos 和 ubuntu 区别

一、发行版与支持 1. CentOS 是基于 Red Hat Enterprise Linux&#xff08;RHEL&#xff09;源代码重新编译而成的社区版&#xff0c;遵循开源协议。一般由社区进行维护&#xff0c;每 7 年左右发布一个主要版本&#xff0c;注重稳定性和长期支持&#xff0c;适合对系统稳定性…

面向对象设计在Java程序开发中的最佳实践研究

面向对象设计在Java程序开发中的最佳实践研究 面向对象设计&#xff08;Object-Oriented Design&#xff0c;OOD&#xff09;是Java程序开发的核心思想。通过合理运用OOD原则&#xff0c;开发者可以构建可维护、可扩展和高效的系统。本文将探讨面向对象设计在Java开发中的最佳…

数据结构在 Web 开发中的重要性与应用

数据结构是 Web 开发的基石&#xff0c;直接关系到应用程序的效率、可扩展性和可维护性。 根据实际需求选择合适的数据结构&#xff0c;能够有效优化性能、简化代码&#xff0c;并提升用户体验。 本文将深入探讨 PHP 和 Laravel 中的常用数据结构&#xff0c;并结合实际案例&am…