我按照github教程中的指示创建了密钥,在github上注册了它们,并尝试显式地使用ssh-agent -然而,每当我尝试进行拉或推操作时,git仍然会继续询问我的密码。
原因可能是什么?
我按照github教程中的指示创建了密钥,在github上注册了它们,并尝试显式地使用ssh-agent -然而,每当我尝试进行拉或推操作时,git仍然会继续询问我的密码。
原因可能是什么?
当前回答
使用SSH而不是HTTPS更新原始远程的url;
git remote set-url origin "SSH URL COPIED FROM GIT REPO."
这对我很管用。
其他回答
如果你用的是Win10:
我也有同样的问题。 (以前由于不同的问题,必须从这里用脚本单独更新ssh-agent)
Git确实访问了我的ssh配置(当我在ssh配置中有无意义的行时,Git会抛出异常),但似乎从不关心我通过ssh-agent添加并在配置中引用的私钥。
解决问题的方法是在PowerShell中执行以下命令:
git config core.sshCommand (get-command ssh).Source.Replace('\','/')
(详情见此连结)
如果您已经尝试了ssh-add,并且仍然提示您输入密码,那么请尝试使用ssh-add -K。这将您的密码短语添加到您的钥匙串。
更新:如果你使用的是macOS Sierra,那么你可能需要再做一步,因为上面的步骤可能不再有效。在~/.ssh/config中添加以下命令:
Host *
UseKeychain yes
以前-K标志用于添加键,但现在:
ssh-add --apple-use-keychain
-K和-A标志已弃用,已被替换 用苹果使用钥匙链和苹果装载钥匙链 分别标记。
稍后编辑:您可能需要添加ssh-add——apple-load-keychain -q到您的.bash_profile或.bashrc或.zshrc或等效文件。
听起来您可能在SSH-Agent本身遇到了问题。我会试着排除故障。
1)你做SSH -add添加你的密钥到SSH?
2)你是否在使用之间关闭终端窗口,因为如果你关闭了窗口,当你重新打开它时,你将不得不再次输入密码。
从OS X El Capitan(10.11)升级到macOS Sierra(10.12)后重新启动后,这种情况一直发生在我身上。ssh-add解决方案暂时有效,但不会在再次重新启动时继续存在。
永久的解决方案是编辑(或创建)~/。ssh/config,启用UseKeychain选项。
Host *
UseKeychain yes
相关:自从我更新到Sierra, macOS一直在问我的ssh密码