Jay Taylor's notes

back to listing index

How to disable Git Credential Manager for Windows?

[web search]
Original source (stackoverflow.com)
Tags: git howto stackoverflow.com
Clipped on: 2018-06-30

I notice that in the latest version of Git, the default is now to popup a "Git Credential Manager for Windows" dialog instead of prompting me for me password at the bash prompt every time. I really hate this behaviour. How can I just disable it and go back to entering the password at the bash shell every time?

By the way, I don't want git caching my credentials in any way, whether through Windows credentials or some internal daemon. I want to disable all credential caching.

asked May 12 '16 at 9:32
Jez
10.6k1777139
up vote 130 down vote accepted

OK I discovered that you need to either AVOID checking the "Git Credential Manager" checkbox during the Git for Windows installer, or (after installation) run bash shell as Administrator and use git config --edit --system to remove the helper = manager line so that it is no longer registered as a credential helper.

For bonus points, use git config --edit --global and insert:

[core]
    askpass =

To disable the OpenSSH credentials popup too.

answered May 12 '16 at 11:11
Jez
10.6k1777139
  • Thanks for you answer. For me, this was the first time to use the editor. If you want to save changes, hit the escape key and type :wq and hit enter (write/save and quit). – Ben Besuijen Aug 8 '16 at 9:27
  • Many thanks! The credential manager got confused with my work's proxy server and it made working with Sourcetree a nightmare. Disabling it fixed the problem immediately. – Johnny Aug 9 '16 at 18:29
  • and if :wq doesn't work like my case use ctrl+z for abort and quit but these will probably make multiple backup file to work with later – Adeem Jan 19 '17 at 9:14
  • Or knock it out with git config --system --unset credential.helper – Ben Butzer May 19 '17 at 20:17
  • For those using SourceTree make sure that the "system" version of GIT is being used, not the embedded one. Tools -> Options -> Git. – Stevanicus May 9 at 11:42

I was able to uninstall the Git Credential Manager for Windows using the uninstall option:

git-credential-manager.exe uninstall

Run this command in C:\Program Files\Git\mingw64\libexec\git-core

answered Mar 30 '17 at 5:09
Ian Mercer
29.2k56799

I had had that problem, I've only removed the git-credential-manager.exe from

C:\Program Files\Git\mingw64\libexec\git-core
answered May 13 '17 at 8:59

Another option I had to use with VSTS:

git config credential.modalprompt false --global

answered Apr 28 '17 at 17:56
Sten Petrov
8,5302649

You can either: 1. right-click windows button in the bottom-left corner, 2. choose "Computer management" from the menu, 3. then "Services and Applications" -> "Services" 4. find there Credentials manager, 5. change Startup type to Disabled, stop it, Apply and OK

answered Aug 12 '16 at 14:37
Phoera
6631713

I wanted to use the credential manager for normal use, but I have scripts where I obviously do not want any prompts whatsoever from git.exe. This is how I invoke git from my scripts:

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

This way, the script always sees the "correct" no-prompt setting without having to adapt any configuration.

(git for Windows 2.13.3)


A variation I found that might also come in handy is to set:

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 <command> ...

But note that git.exe -c credential.interactive=never <command> ... does NOT work (seems that -c thing isn't routed through to Git-Credential-Manager-for-Windows or whatever).

That way, you can use the GCMfW, but it will never prompt you, it will just lookup the credentials, which can be very helpful in non-interactive environs.

answered Aug 4 '17 at 18:47
Martin Ba
19k18110234

and if :wq doesn't work like my case use ctrl+z for abort and quit but these will probably make multiple backup file to work with later – Adeem Jan 19 at 9:14

Also be sure to run Git as Administrator! Otherwise the file won't be saved (in my case).

answered Mar 9 '17 at 8:34

For me didn't work:

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...

But with --force flag worked:

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...

I could see that trace after I run:

set git_trace=1

Also I added the git username:

git config --global credential.username myGitUsername

Then:

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

In the end I put this command:

git config --global credential.modalPrompt false

I check if ssh agent is running - open a bash window to run this command

eval "$(ssh-agent -s)"

Then in the computer users/yourName folder where is .ssh Add connection(still in bash)

ssh-add .ssh/id_rsa

or

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

I checked all the settings that I add above:

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    

And when I did git push again only for the first time I had to add username and pass.

git push
Please enter your GitHub credentials for https://myGithubUsername@github.com/
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.

Since than on git push I don't have anymore the message to enter my git credentials.

D:\projects\react-redux\myProject (master -> origin) (budget@1.0.0)
λ 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

After these settings I received an email too with the message:

 A personal access token (git: https://myGitHubUsername@github.com/ 
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.

I put this because for me worked. I hope this will help others, too.

answered Jun 25 at 6:16
John Smith
301324

Your Answer

 
community wiki

Not the answer you're looking for? Browse other questions tagged or ask your own question.

asked

2 years, 1 month ago

viewed

46,805 times

active

5 days ago

Hot Network Questions