web-dev-qa-db-fra.com

VSCode ouvre automatiquement Git Shell dans un terminal - comment le désactiver?

Depuis la dernière version de VSCode, une fenêtre contextuelle m'a demandé si je voulais autoriser l'ouverture de Git. Eh bien, j'ai permis cela et maintenant, chaque fois que j'essaie d'ouvrir le terminal intégré, Git Shell s'ouvre en externe et ferme le terminal intégré.

Ma configuration utilisateur:

"terminal.integrated.Shell.windows": "C:\\WINDOWS\\Sysnative\\WindowsPowerShell\\v1.0\\powershell.exe"

Mais cela n'aide pas car git est déjà en cours d'exécution.

Je veux ouvrir powershell à la place et avoir Git Shell dans VSCode comme auparavant. Comment puis-je atteindre cet objectif?

METTRE À JOUR:

Je lance git config -l --show-Origin comme suggéré par VonC:

file:"C:\\ProgramData/Git/config"       core.symlinks=false
file:"C:\\ProgramData/Git/config"       core.autocrlf=true
file:"C:\\ProgramData/Git/config"       core.fscache=true
file:"C:\\ProgramData/Git/config"       color.diff=auto
file:"C:\\ProgramData/Git/config"       color.status=auto
file:"C:\\ProgramData/Git/config"       color.branch=auto
file:"C:\\ProgramData/Git/config"       color.interactive=true
file:"C:\\ProgramData/Git/config"       help.format=html
file:"C:\\ProgramData/Git/config"       http.sslcainfo=D:/TOOLS/Git/mingw64/ssl/certs/ca-bundle.crt
file:"C:\\ProgramData/Git/config"       diff.astextplain.textconv=astextplain
file:"C:\\ProgramData/Git/config"       rebase.autosquash=true
file:"D:\\TOOLS\\Git\\mingw64/etc/gitconfig"    credential.helper=manager
file:C:/Users/myusername/.gitconfig  filter.lfs.clean=git-lfs clean -- %f
file:C:/Users/myusername/.gitconfig  filter.lfs.smudge=git-lfs smudge -- %f
file:C:/Users/myusername/.gitconfig  filter.lfs.process=git-lfs filter-process
file:C:/Users/myusername/.gitconfig  filter.lfs.required=true
file:C:/Users/myusername/.gitconfig  user.name=MYName
file:C:/Users/myusername/.gitconfig  [email protected]
file:.git/config        core.repositoryformatversion=0
file:.git/config        core.filemode=false
file:.git/config        core.bare=false
file:.git/config        core.logallrefupdates=true
file:.git/config        core.symlinks=false
file:.git/config        core.ignorecase=true
file:.git/config        remote.Origin.url=https://github.com/MyProject/my-project.git
file:.git/config        remote.Origin.fetch=+refs/heads/*:refs/remotes/Origin/*
file:.git/config        branch.master.remote=Origin
file:.git/config        branch.master.merge=refs/heads/master
file:.git/config        branch.routing.remote=Origin
file:.git/config        branch.routing.merge=refs/heads/routing

Mes paramètres utilisateur VScode:

"php.validate.executablePath": "D:/TOOLS/xampp7/php/php.exe",
"php.suggest.basic": false,
"window.zoomLevel": 0,
"workbench.colorTheme": "Monokai",
"workbench.iconTheme": "vs-seti",
"git.path": "D:/TOOLS/Git/cmd/git.exe",
// A glob pattern that defines files and folders to exclude while listing annotations
  "todohighlight.exclude": "{**/node_modules/**,**/bower_components/**,**/bower/**,**/libs/**,**/vendor/**,**/dist/**,**/build/**,**/.vscode/**,**/_output/**,**/*.min.*,**/*.map}",
  "git.autofetch": true,
  "git.confirmSync": false,
  "git.enableSmartCommit": true,
  "Explorer.confirmDelete": false,
  "terminal.integrated.Shell.windows": "C:\\WINDOWS\\Sysnative\\WindowsPowerShell\\v1.0\\powershell.exe",
  "todo.colors.tag": "#967848",
  "todo.colors.code": "#fbf5cb",

Paramètres par défaut avec le mot clé git:

  "projectManager.git.baseFolders": [],
  "projectManager.git.maxDepthRecursion": 4,
  "git.autofetch": false,
  "git.autorefresh": true,
  "git.checkoutType": "all",
  "git.confirmSync": true,
  "git.countBadge": "all",
  "git.decorations.enabled": true,
  "git.defaultCloneDirectory": null,
  "git.enableCommitSigning": false,
  "git.enabled": true,
  "git.enableSmartCommit": false,
  "git.ignoreLegacyWarning": false,
  "git.ignoreLimitWarning": false,
  "git.ignoreMissingGitWarning": false,
  "git.path": null,
17
Hexodus

Je pense que c'est plus une chose idiote

Désinstallez ensuite Git pour Windows si vous avez utilisé l’installation.
Pour cela, commencez par vérifier (et déplacer/supprimer) les différents fichiers de configuration Git répertoriés avec:

git config -l --show-Origin

Si cela provient d'un paramètre Git, vous pouvez le voir ici.

3
VonC

J'ai compris ce qui cause ce problème ou au moins une partie de celui-ci. Dans un autre projet, je pouvais parfaitement ouvrir le terminal. J'ai donc comparé ces deux projets et découvert que celui qui posait problème avait un dossier .vscode avec ce settings.json à l'intérieur:

{
    "terminal.integrated.Shell.windows": "D:\\TOOLS\\Git\\git-bash.exe",
    "terminal.integrated.Shell.windows": "C:\\WINDOWS\\Sysnative\\WindowsPowerShell\\v1.0\\powershell.exe"
}

Cela a évidemment été créé par VSCode lui-même et n'a rien à voir avec le fichier de configuration de l'utilisateur qui apparaît à l'aide de l'interface graphique. Ensuite, je viens de commenter la ligne git-bash et de démarrer VSCode. Depuis lors, je me suis débarrassé du démarrage automatique de Git dans le terminal. L'ennui, c'est que je dois me connecter à Github chaque fois que je charge le projet. Décommenter la ligne n'a pas changé ce comportement. 

Si quelqu'un peut mieux expliquer ce qui se passe là-bas et comment restaurer l'authentification automatique du github (sans occuper mon terminal), j'accepterai une bonne réponse.

3
Hexodus

Téléchargez et installez git à partir de https://git-scm.com/download/win

Le chemin par défaut pour git devrait être C:\\Program Files\\Git\\bin\\bash.exe

Ensuite, allez dans Fichier > Préférences > Paramètres et ajoutez ce code sous vos autres paramètres:

{
[...]
"git.enabled": false,
"git.path": null,
"git.autofetch": false,
"terminal.integrated.Shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe"
}

J'espère que cela t'aides!

0
Andreas Sterner