直接配置terminal.integrated.defaultprofile.windows和terminal.integrated.profiles.windows即可生效:前者指定默认终端为“git bash”,后者需明确定义其path指向git-bash.exe(非bash.exe),且名称严格一致;改完后须关闭所有终端再用ctrl+shift+新建,否则复用旧终端导致不生效。

直接改 terminal.integrated.defaultProfile.windows 就行,但光设这个值大概率不生效——VSCode 不会自动找到 git-bash.exe,必须同时在 terminal.integrated.profiles.windows 里明确定义它。
为什么点选“Git Bash”没反应?
VSCode 的设置界面下拉菜单只显示它「已识别」的终端。没出现 ≠ 没装 Git,而是它没在默认路径扫描到 git-bash.exe。常见原因包括:
- Git 装在非标位置(比如 D 盘、Scoop/Chocolatey 管理的路径)
- 装的是便携版,或自定义安装时取消了“添加到 PATH”
- 你复制的路径是
bash.exe或sh.exe,但 VSCode 只认git-bash.exe(带 GUI 启动器,能正确映射 Windows 路径) - 路径含空格或中文,JSON 解析失败(但 VSCode 不报错,静默忽略整个配置块)
手动写 settings.json 最可靠
打开命令面板(Ctrl + Shift + P),输入并选择 Preferences: Open Settings (JSON),在花括号内添加以下两段(注意逗号分隔,且不能有 trailing comma):
"terminal.integrated.defaultProfile.windows": "Git Bash",
"terminal.integrated.profiles.windows": {
"Git Bash": {
"path": "C:\Program Files\Git\git-bash.exe",
"args": ["--login", "-i"]
}
}
关键点:
-
path必须指向git-bash.exe,不是bash.exe;用双反斜杠或正斜杠均可,但不能混用 -
args加--login才会读~/.bashrc,否则git、ssh命令可能找不到 - profile 名称
"Git Bash"必须和defaultProfile的值**完全一致**(包括空格、大小写) - 如果路径是
D:\tools\git\git-bash.exe,就填那个,别硬套 C 盘路径
改完还是开 PowerShell?关掉再新建
VSCode 不会把正在跑的终端“热切换”。旧终端保持原样,新终端才按新配置启动。务必:
- 点终端右上角垃圾桶图标,关掉所有已打开的终端面板
- 用快捷键
Ctrl + Shift + `新建,或命令面板执行Terminal: Create New Terminal - 不要点已有终端右上角的「+」——那是复用当前类型,不是新建默认类型
- 如果还在远程(WSL/SSH)里,
.windows配置完全不生效,得配terminal.integrated.defaultProfile.linux
最容易被忽略的是 profile 名称拼写和终端复用机制。VSCode 的终端配置本质是“新建时查表”,不是“运行时重定向”,所以路径对、名字对、新建对,三者缺一不可。











