Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
598 views
in Technique[技术] by (71.8m points)

caching - git credential.helper=cache never forgets the password?

I want my password to be forgotten, so I have to type it again.

I have setup this:

git config credential.helper 'cache --timeout=600'

but much later on, several days, it still remembers the password and does not ask me it again...

git version 1.7.10.4 (at Ubuntu)

did I run into a bug? (as I see similar questions but none I found that answers this...)

EDIT: or am I missing something?

EDIT: now I know commit is local, and push is remote. BUT my commits (with RabbitVCS Git nautilus addon) seem to be performing the push as remote repo is being updated... When I issue push, it do asks for password... but with the commit command it does not ask AND perform the remote update; I checked that 4 hours ago my commit updated the remote server :(

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Problem 1: "want my password to be forgotten" by git

Problem 2 (implied): contradictory configuration settings

Answer:

git config --unset-all credential.helper
git config --global --unset-all credential.helper
git config --system --unset-all credential.helper

Explanation: Git configuration is specified in three places:

  1. (repository_home)/.git/config...........................for the subject repository.
  2. ~/.gitconfig..........................for this particular user.
  3. /etc/gitconfig.......................for all users on this system.

The commands noted above will remove all settings related to credentials at the repository, user and system level... which (I think) answers your question.

However, it sounds like your problem may be limited to having some sort of configuration contradiction related to one option of credential.helper, cache. If you'd prefer to reset only that option, do this:

git config --unset credential.helper 'cache'
git config --global --unset credential.helper 'cache'
git config --system --unset credential.helper 'cache'

... then set the timeout at the appropriate level, any of:

git config --set credential.helper 'cache --timeout=600'
git config --global --set credential.helper 'cache --timeout=600'
git config --system --set credential.helper 'cache --timeout=600'

For more, see the excellent documentation here:

  1. git config command
  2. git credential caching

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...