Recently, I was plagued by the “CredentialHelperSelector” dialogue popping up multiple times when attempting to pull from a remote Git repository. This was despite repeatedly selecting the option to remember my selection to use manager
and various attempts to explicitly set the config helper via the command line.
In the end, the following command was my saviour:
git config -l --show-origin
It showed that the offending credential.helper=helper-selector
was specified in the gitconfig
file under the Git install (this being Windows). What you then need to know is that credential.helper
is a multi-valued list, and so any changes I was making in my user level .gitconfig
were additive. This explains why, once an alternative was specified, I could cancel the numerous selector dialogues, and the operation would still complete successfully.
So, how to avoid those annoying pop-ups? Well, if you can edit that system-level gitconfig
just remove the offending entry. Unfortunately, on my locked-down system, that wasn’t an option. The answer, then, is this change, available in Git 2.9 onwards. It allows you to specify an empty helper to clear any existing entries in the list. My .gitconfig
now contains the following, and the selector is no more!
[credential]
helper =
helper = manager