VSCode Integrated Terminal creates a separate window

According to this vscoode GitHub Issue (#7286):

... git-bash.exe is a Windows application (with WinMain as entry), but bash.exe is a console application (with main as entry). To be used as integrated shell, the executable must be a console application, so that stdin/stdout/stderr can be redirected.

The recommended approach is to use:

"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe"

My Solution:

  1. Open settings

  2. Deactivate: Windows Enable Conpty

Windows Enable Conpty


I was infact looking for the solution to this exact problem. @JBD said it correctly however I would just like to add that the git-bash.exe file is kept seperate in the normal program folder of git.

{
    "terminal.integrated.shell.windows": "D:\\Program Files\\Git\\git-bash.exe" 
}

but what you need to link within vs Codes settings is a different file which will enable git bash to run within the vs code terminal. The path to that is in the "bin" folder within the "Git" folder.

{
"terminal.integrated.shell.windows": "D:\\Program Files\\Git\\bin\\bash.exe" 
}

This will allow your git bash to run from within the terminal window of VS Code