Comment désactiver Git Credential Manager pour Windows?

Je remarque que dans la dernière version de Git, la boîte de dialog “Git Credential Manager for Windows” apparaît par défaut au lieu de me demander à chaque fois un mot de passe à l’invite de bash. Je déteste vraiment ce comportement. Comment puis-je simplement le désactiver et revenir à chaque fois à la saisie du mot de passe sur le shell bash?

Par ailleurs, je ne veux pas que git cache mes informations d’identification de quelque manière que ce soit, que ce soit via les informations d’identification Windows ou un démon interne. Je veux désactiver toute la mise en cache des informations d’identification .

OK J’ai découvert que vous devez soit ÉVITER de vérifier la case à cocher “Git Credential Manager” pendant le programme d’installation de Git for Windows, soit (après l’installation) exécuter bash shell en tant qu’administrateur et utiliser git config --edit --system ligne afin qu’elle ne soit plus enregistrée en tant qu’assistant d’identification.

Pour les points bonus, utilisez git config --edit --global et insérez:

 [core] askpass = 

Pour désactiver également la fenêtre contextuelle OpenSSH.

J’ai pu désinstaller Git Credential Manager pour Windows en utilisant l’option de désinstallation:

 git-credential-manager.exe uninstall 

Exécutez cette commande dans C:\Program Files\Git\mingw64\libexec\git-core

Tu peux soit:

  1. win + R, tapez “compmgmt.msc”,
  2. sélectionnez “Services et applications” -> “Services”
  3. trouvez-y le gestionnaire d’informations d’identification,
  4. Modifier le type de démarrage sur Désactivé, l’arrêter, Appliquer et OK

Une autre option que je devais utiliser avec VSTS:

git config credential.modalprompt false --global

J’ai eu ce problème, j’ai seulement enlevé le git-credential-manager.exe de

 C:\Program Files\Git\mingw64\libexec\git-core 

Je voulais utiliser le gestionnaire d’informations d’identification pour une utilisation normale, mais j’ai des scripts où je ne souhaite évidemment pas git.exe de git.exe de la git.exe de git.exe . Voici comment j’appelle git de mes scripts:

 set GIT_TERMINAL_PROMPT=0 git -c core.askpass= -c credential.helper=  ... 

De cette façon, le script voit toujours le paramètre «sans» «correct» sans avoir à adapter aucune configuration.

(git pour Windows 2.13.3)


Une variante que j’ai trouvée utile pourrait être:

 set GCM_INTERACTIVE=never # or: git config --global credential.interactive never set GIT_TERMINAL_PROMPT=0 git.exe -c core.askpass= -c credential.helper=manager  ... 

Mais notez que git.exe -c credential.interactive=never ... ne fonctionne PAS (semble que la chose -c ne soit pas acheminée via Git-Credential-Manager-for-Windows ou autre).

De cette façon, vous pouvez utiliser GCMfW, mais il ne vous le demandera jamais, il se contentera de rechercher les informations d’identification, ce qui peut être très utile dans des environnements non interactifs.

Pour moi, ça n’a pas marché:

 C:\Program Files\Git\mingw64\libexec\git-core git-credential-manager.exe uninstall Looking for Git installation(s)... C:\Program Files\Git Updated your /etc/gitconfig [git config --system] Updated your ~/.gitconfig [git config --global] Removing from 'C:\Program Files\Git'. removal failed. U_U Press any key to continue... 

Mais avec le drapeau –force a fonctionné:

 C:\Program Files\Git\mingw64\libexec\git-core git credential-manager uninstall --force 08:21:42.537616 exec_cmd.c:236 trace: resolved executable dir: C:/Program Files/Git/mingw64/libexec/git-core e 08:21:42.538616 git.c:576 trace: exec: git-credential-manager uninstall --force 08:21:42.538616 run-command.c:640 trace: run_command: git-credential-manager uninstall --force Looking for Git installation(s)... C:\Program Files\Git Updated your /etc/gitconfig [git config --system] Updated your ~/.gitconfig [git config --global] Success! Git Credential Manager for Windows was removed! ^_^ Press any key to continue... 

Je pouvais voir cette trace après avoir couru:

 set git_trace=1 

J’ai aussi ajouté le nom d’utilisateur git:

 git config --global credential.username myGitUsername 

Alors:

 C:\Program Files\Git\mingw64\libexec\git-core git config --global credential.helper manager 

Au final, j’ai mis cette commande:

 git config --global credential.modalPrompt false 

Je vérifie si l’agent ssh est en cours d’exécution – ouvrez une fenêtre bash pour exécuter cette commande

 eval "$(ssh-agent -s)" 

Ensuite, dans le dossier users / yourName où se trouve .ssh Add connection (toujours en bash)

 ssh-add .ssh/id_rsa or ssh-add ~/.ssh/id_rsa(if you are not in that folder) 

J’ai vérifié tous les parameters que j’ai ajoutés ci-dessus:

 C:\Program Files\Git\mingw64\libexec\git-core git config --list 09:41:28.915183 exec_cmd.c:236 trace: resolved executable dir: C:/Program Files/Git/mingw64/libexec/git-cor e 09:41:28.917182 git.c:344 trace: built-in: git config --list 09:41:28.918181 run-command.c:640 trace: run_command: unset GIT_PAGER_IN_USE; LESS=FRX LV=-c less core.symlinks=false core.autocrlf=true core.fscache=true color.diff=auto color.status=auto color.branch=auto color.interactive=true help.format=html rebase.autosquash=true http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt http.sslbackend=openssl diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true credential.helper=manager credential.modalprompt=false credential.username=myGitUsername 

Et quand je ne suis reparti que pour la première fois, j’ai dû append un nom d’utilisateur et passer.

 git push Please enter your GitHub credentials for https://[email protected]/ username: myGithubUsername password: ************* Counting objects: 3, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 316 bytes | 316.00 KiB/s, done. Total 3 (delta 2), reused 0 (delta 0) remote: Resolving deltas: 100% (2/2), completed with 2 local objects. 

Étant donné que sur git push je n’ai plus le message pour entrer mes informations d’identification git.

 D:\projects\react-redux\myProject (master -> origin) ([email protected]) λ git push Counting objects: 3, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 314 bytes | 314.00 KiB/s, done. Total 3 (delta 2), reused 0 (delta 0) remote: Resolving deltas: 100% (2/2), completed with 2 local objects. To https://github.com/myGitUsername/myProject.git 8d38b18..f442d74 master -> master 

Après ces réglages, j’ai également reçu un email avec le message:

  A personal access token (git: https://[email protected]/ on LAP0110 at 25-Jun-2018 09:22) with gist and repo scopes was recently added to your account. Visit https://github.com/settings/tokens for more information. 

Je mets ça parce que pour moi travaillais. J’espère que cela aidera les autres aussi.

et si: wq ne fonctionne pas comme mon cas, utilisez ctrl + z pour abandonner et quitter, mais cela fera probablement travailler plusieurs fichiers de sauvegarde plus tard – Adeem Jan 19 at 9:14

Veillez également à exécuter Git en tant qu’administrateur! Sinon, le fichier ne sera pas enregistré (dans mon cas).