Microsoft/vscode

SCM - Shell integration ignores env overrides when opening from SCM panel?

Open

#160.765 aperta il 13 set 2022

Vedi su GitHub
 (9 commenti) (0 reazioni) (1 assegnatario)TypeScript (10.221 fork)batch import
bughelp wantedscm

Metriche repository

Star
 (74.848 star)
Metriche merge PR
 (Merge medio 11h 43m) (1000 PR mergiate in 30 g)

Descrizione

Does this issue occur when all extensions are disabled?: Yes

  • VS Code Version: 1.70.2
  • OS Version: Windows 10 21H1

Initial conditions

Set up a custom profile (globally):

    "terminal.integrated.profiles.windows": {
        "cmd14": {
            "path": "cmd",
            "overrideName": false,
            "env": {
                "PATH": "path\\to\\nodejs14npm7;${env:PATH}"
            }
        }
    },

Make this profile default (in workspace):

    "terminal.integrated.defaultProfile.windows": "cmd14",

Correct behavior

  1. Disable shell integration
  2. Open a terminal using Ctrl+~, execute node – it is found and executed
  3. Open a terminal from the context menu on a repository in the SCM panel, execute node – it is found and executed

Incorrect behavior

  1. Enable shell integration
  2. Open a terminal using Ctrl+~, execute node – it is found and executed
  3. Open a terminal from the context menu on a repository in the SCM panel, execute node – it is not found

In both cases here, Code reports that shell integration failed to activate. When printing PATH, I can see that the first terminal has it augmented, while the second one doesn't.

Guida contributor