git: osxkeychain凭据助手无声失败记住用户名/密码

17

这个页面和很多类似的页面都提供了在git中设置osxkeychain凭据助手的指令。 我按照这些指令操作,一切似乎都运行良好。 我可以看到我的 Keychain Access 中的用户名和密码是正确的,并且 git-credential-osxkeychain 已经可以访问 github.com 记录。当我输入 git config -l 时,我可以看到 credential.helper=osxkeychain 以及正确的 user.name 和 user.email 条目。当我运行 git credential-osxkeychain 时,我能够看到我应该看到的用法信息。在任何时候,我都没有收到错误消息。一切都似乎已正确设置。

然而,无论我推送多少次特定存储库,它总是要求我输入用户名和密码。输入 Keychain Access 条目中找到的用户名和密码可以正常工作,因此这不是登录问题。另外,当我输入 git credential-osxkeychain erase (或者 git-credential-osxkeychain erase)命令时,该命令会默默地挂起,根据我观察,该命令似乎无限期地挂起。

到目前为止,我还无法找到任何记录此问题的内容。 这个问题 提出了类似的问题,但是我的 git 版本是 2.6.4,因此该解决方案并没有帮助。为什么会出现这种情况,我该如何让 git 使用 osxkeychain 凭据助手来记住我的用户名和密码呢?

我正在使用 Mac OS X 10.11.4 和 git 版本 2.6.4。


1
我有完全相同的问题。Mac OS X 10.12.2,git 2.11.0。 - Daniel Perez Alvarez
这是吗?http://superuser.com/questions/1127067/macos-keeps-asking-my-ssh-passphrase-since-i-updated-to-sierra - Chris Hamons
1个回答

20

编辑~/.ssh/config文件,并在您想让钥匙串记住密码的每个主机中添加UseKeychain yes

例如,如果您正在尝试为GitHub执行此操作:

Host github.com
    IdentityFile ~/.ssh/your_github_cert_rsa
    UseKeychain yes

如果你想为每个主机启用它,只需添加:

Host *
    UseKeychain yes

这是苹果在macOS Sierra 10.12.2上新增的要求,您可以通过在10.12.2中运行man ssh_config来了解更多信息:

UseKeychain

             On macOS, specifies whether the system should search for
             passphrases in the user's keychain when attempting to use a par-
             ticular key. When the passphrase is provided by the user, this
             option also specifies whether the passphrase should be stored
             into the keychain once it has been verified to be correct.  The
             argument must be ``yes'' or ``no''.  The default is ``no''.

在Mac OS 10.11下,您可以通过变量检查钥匙串是否已禁用

KeychainIntegration
  Specifies whether to enable Keychain support on Mac OS X.  
  If Keychain support is enabled, then passwords for identities can be 
  managed via the Mac OS X Keychain.
  The value for this keyword must be ``yes'' or ``no''.  The default is ``yes''.
AskPassGUI
  Show the system password prompt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接