我按照说明如何设置git将OS X keychain集成到git命令.说明说密码提示应该再次出现,并且密钥链访问窗口会出现.密码提示,但钥匙串窗口没有.此外,需要身份验证的后续命令(到https://URL)会出现密码提示.这些命令都没有引发任何错误或警告某些事情发生了犯规.
我的问题是如何让git命令使用keychain进行https://请求,这样我就不必重新输入我的用户名和密码了?
一些有用的命令输出如下:
$ ls $(dirname $(which git)) | grep git
git
git-credential-osxkeychain
git-cvsserver
git-receive-pack
git-shell
git-upload-archive
git-upload-pack
gitk
$ git credential-osxkeychain
Usage: git credential-osxkeychain <get|store|erase>
$ git config --global credential.helper
osxkeychain
$ uname -a
Darwin mac-alex 11.4.2 Darwin Kernel Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012; root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64
$ git --version
git version 1.7.5.4
Run Code Online (Sandbox Code Playgroud) 最近,我在线更改了我唯一的Github帐户的密码。从那时起,每次我在本地计算机上使用 git 执行任何操作时,它都会不断询问我的用户名和密码。我阅读了如何更新 Git 的密码?和https://help.github.com/articles/updating-your-github-access-credentials/。
Git 不断提示我输入密码和git : osxkeychain credential helper Silently failed to Remember username/password 的问题与我的类似,只是我没有使用 SSH(或者如果 git 确实使用 ssh,我不知道它。我的 .ssh目录不包含任何关于 Github 的内容)。
我的钥匙串应用程序中曾经有一个 github 项目。由于事情不起作用,我选择删除它,现在当我在某些 github 操作中输入我的用户名和密码时,不会自动创建新项目。
尝试git config --global credential.helper osxkeychain产生以下错误
$ git config --global credential.helper osxkeychain
warning: credential.helper has multiple values
error: cannot overwrite multiple values with a single value
Use a regexp, --add or --replace-all to change credential.helper.
Run Code Online (Sandbox Code Playgroud)
这是输出git config -l:
git config -l
credential.helper=osxkeychain …Run Code Online (Sandbox Code Playgroud)