在 VSCode 用户设置文件 settings.json 中配置 terminal.integrated.defaultProfile.windows 为 Git Bash,并在 terminal.integrated.profiles.windows 中指定 git-bash.exe 的绝对路径,配置后需关闭所有旧终端窗口,新建终端即可生效。
先说结论:必须同时配置 defaultProfile 和 profiles 两项设置,且路径必须指向 git-bash.exe 而非 bash.exe,否则 Git 命令无法识别。
- 适合 Windows 下需要 Linux 命令环境的开发者
- 先准备 Git for Windows 安装包并确认安装路径
- 验收标准为新建终端显示 Git Bash 且 git 命令可用
命令速用版
直接在 settings.json 中插入以下配置片段,注意将 path 替换为实际的 Git Bash 安装路径:
{"terminal.integrated.defaultProfile.windows": "Git Bash","terminal.integrated.profiles.windows": {"Git Bash": {"path": "C:\\Program Files\\Git\\git-bash.exe","args": ["`--login`", "-i"]}}}若 Git 已加入系统环境变量 PATH,path 字段可简写为 git-bash.exe,否则必须填写绝对路径。
为什么会这样
VSCode 不会自动扫描非标准路径下的终端程序,且旧版配置项已弃用。VSCode 1.79+ 版本已彻底弃用 terminal.integrated.shell.windows 设置项,只设 defaultProfile 不加 profiles 等于只说要 Git Bash 却不告诉它在哪里,导致回退到 PowerShell 或 CMD。
分步处理
第一步是精准查找 Git Bash 安装路径,90% 的配置失败都是因为路径错误。右键桌面或开始菜单的 Git Bash 快捷方式,选择属性,复制目标输入框中引号内的纯路径,例如 D:\software\Git\git-bash.exe。
第二步是修改用户设置文件,打开命令面板 Ctrl+Shift+P,输入 Preferences: Open Settings (JSON),在花括号内插入配置代码,确保 terminal.integrated.profiles.windows 中定义的 key 名称与 defaultProfile 的值完全一致。
第三步是重启终端实例,配置保存后必须关掉所有已打开的终端面板,点垃圾桶图标关闭而不是最小化,再用 Ctrl+Shift+` 新建终端,不要点已有终端右上角的加号按钮。
怎么验证是否生效
新建终端后查看顶部标签页名称,若显示 Git Bash 则配置成功。在终端内输入 git `--version` 并回车,若能输出版本号且无报错,说明环境变量加载正常。
若标签页仍显示 PowerShell,打开开发者工具 Console 标签,输入 localStorage.getItem('terminal.integrated.defaultProfile') 检查返回值是否为你设定的字符串。
常见坑
路径指向错误是最高频问题,必须指向 git-bash.exe 而不是 bash.exe 或 sh.exe,后者是纯 shell 不加载 Git 环境封装。配置后未关闭旧终端也会导致不生效,VSCode 不会把正在跑的终端窗口热切换成新配置。
JSON 格式错误会被静默忽略,确保 profiles.windows 是对象而不是数组,键名是字符串,没有多余的逗号或中文标点。若路径包含空格,JSON 中反斜杠要双写或使用正斜杠。
常见问题
为什么改了设置还是打开 PowerShell
因为旧终端实例未被关闭,VSCode 默认复用已存在的终端类型。必须关掉所有终端面板后重新新建,且确保 profile 名称拼写与 defaultProfile 值完全一致。
为什么终端能开但 git 命令不可用
因为 path 路径指向了 bash.exe 而不是 git-bash.exe。bash.exe 是纯 shell 不带 Git 环境,必须使用 git-bash.exe 才能正确映射 Windows 路径和加载环境变量。
配置后启动慢或中文乱码怎么办
这是 Git Bash 自身启动方式导致的,VSCode 调用时默认加了无启动脚本参数。在 profiles 配置中添加 args 参数为 ["`--login`", "-i"] 可强制读取 bashrc 配置文件。
参考来源
- VSCode|Windows 下 VS Code 配置 Git Bash 为默认终端完整教程
- VSCode 怎么配置默认终端为 Git Bash
- VSCode 如何修改默认终端为 Git Bash
- VSCode 终端怎么默认改成 Git Bash - 命令行工具替换方法详解
- VSCode 内置终端配置:如何更换默认 CMD 为 PowerShell 或 GitBash