Reputation: 1411
I ran:
$ git config credential.helper store
And then:
$ git push origin master
After pushing, I entered my credentials and they were saved.
I read that they are stored in plaintext, and so now I want to remove my credentials from being saved and entered by default.
How can I do this?
Upvotes: 122
Views: 258551
Reputation: 1423
Credentials are often NOT stored anywhere in the filesystem!
Instead, they are cached by a daemon which starts the first time you enter them
(and stops on reboot or when exit
action is used) - see the docs:
If you would like the daemon to exit early, forgetting all cached credentials before their timeout, you can issue an
exit
action:git credential-cache exit
Upvotes: 23
Reputation: 1
The below command helped me to resolve my issue:
echo "url=https://github.com" | git credential reject
Upvotes: 0
Reputation: 2603
If you use github you can show your credential status with
gh auth status
login with credentials
gh auth login
and logout remove credentials with
gh auth logout
remove credential from cmd line
rm -rf ~/.config/gh
Upvotes: 1
Reputation: 4153
Oh goodness, here's another location - this one for KDE users. Spent a long time trying the ones already listed here...
Launch KDE Wallet Manager (also accessible from KDE Wallet settings in the system settings app), search for "github" and in the "ksshaskpass" section, remove the corresponding Github entry.
Upvotes: 3
Reputation: 330
Universal and simple solution:
echo "url=https://github.com" | git credential reject
This cancels authorization on GitHub.
Upvotes: 15
Reputation: 567
None of the above solutions worked for me. I revoked the access by deletion of the token I had generated on the machine.
I logged into GitHub webpage went to: click picture > settings > Developer settings > Personal access tokens > delete the token for that particular machine
Upvotes: 4
Reputation: 381
If you want to remove just one cached credential then that can be done in any operating system by driving the Git credential helper API from the Git command line:
Let's say the Git repository is git.example.com and you connect using HTTPS. At the operating system command prompt enter the Git command:
git credential reject
You're now on the command line for the credential API's reject function. Type the following lines:
protocol=https
host=git.example.com
On the next line, close the commands with the "end of stdin" keystroke for your operating system. Typically Ctrl-D for Linux and Macos, and maybe Ctrl-Z for Windows.
The credential has now been removed from the credential store. Since we are using Git's Credential API for the removal, it doesn't matter which credential store implementing that API is being used for the backend.
Do not alter Git's configuration of user.email or credential.helper before using the above command. Run the command as the userid you use to connect with the remote Git repository, not as a super-user.
Upvotes: 7
Reputation: 331
If you're on windows 10, there is a credential manager in the OS to.
Go to Start menu, type "Credential Manager", then inside this manager, select "Windows Credentials", seek for "git:https//github.com", expand it, then you'll find "Delete" inside of it.
Upvotes: 10
Reputation: 1094
For Linux users:
I ran into this question while trying to switch from password authentication to PAT (personal access token).
I used https to work with Github. Github suggests (at the time of writing this answer) that the switch can be done by simplying entering my PAT instead of my password. However, the problem I had, was that my password was cached, so I never had to enter it.
So I had to look for my cached/stored password in order to remove it, so that I can then enter my PAT instead of my password when prompted.
I found the password in the following file:
/home/MyUsername/.gitconfig
I deleted the file, and simply pasted the PAT instead of my password the next time.
Github recommends using their Git Credential Manager Core (GCM Core) for storing credentials (source: https://docs.github.com/en/get-started/getting-started-with-git/caching-your-github-credentials-in-git). I installed this as well, and the PAT credentials are now stored in a different location:
/home/MyUsername/.gcm
(it's a folder)
I wrote this answer in more details and perhaps a little offtopic as starting in 2 days (August 13th 2021), password authentication will no longer be possible, and I suppose some users might have difficulty in locating their cached password.
TL;DR look for:
/home/MyUsername/.gitconfig
Upvotes: 8
Reputation: 5345
None of the above worked for me. I am using a mac what i had to do was to remove my credential manually from keychain app
Steps
$ git config --global credential.helper
osxkeychain
Open keychain app
Search for the credential (Eg Using username) by selecting (All Items)
Run the git command (push, pull etc). This should prompt your new password
Upvotes: 7
Reputation: 151
for me all options didn't work, I just edited file "config" inside .git/
in my repository.
cd .git/
nano config
search for [remote "origin"]
and edit above:
url=YOUR REPOSITORY URL
(WITH OR WITHOUT user and pass like username:[email protected]/username/repository.git
)
save and try push your repo
Upvotes: 15
Reputation: 3987
for me unset command didn't work, instead I deleted the file:
rm ~/.git-credentials
Upvotes: 23
Reputation: 495
As he did not give any flag as global or local or system, it would take local by default, so the correct way is to move to the respective folder(repository) and type this command
git config --local --unset credential.helper
or
git config --unset credential.helper
Reference: https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-config
Upvotes: 38
Reputation: 2246
Run the following command in the terminal to remove your credentials stored in the cache
git config --global --unset credential.helper
Upvotes: 201
Reputation: 488453
Your credentials are stored in the file you (or the thing using git credential-store
) specified when you (or it) ran the command, as described in the documentation. The default is $HOME/.git-credentials
. You should be able to open this file in your editor and edit it, or simply remove it entirely.
Note that you may also want to change the credential helper so that these are not stored again. See the git credential-cache
documentation as well, for instance.
Upvotes: 35