我已按照以下指南在 Mac OS 10.7.4 上设置 SSH 密钥。
https://help.github.com/articles/generating-ssh-keys
但由于某种原因,它不断提示我输入密码。如果我不指定密码,它不会提示我,但这是不希望的。有没有办法缓存我的密码,这样每次拉/推都不会提示我?
我已按照以下指南在 Mac OS 10.7.4 上设置 SSH 密钥。
https://help.github.com/articles/generating-ssh-keys
但由于某种原因,它不断提示我输入密码。如果我不指定密码,它不会提示我,但这是不希望的。有没有办法缓存我的密码,这样每次拉/推都不会提示我?
您必须在 ssh-add 中添加您的密钥文件
ssh-add ~/.ssh/you_key_rsa
在那之后,它就不会再问了。
SSH 密码用于对连接到 GIT 存储库的用户进行身份验证。如果你在本地工作,git 不应该要求输入密码,只在进行远程操作时,例如克隆、推送、拉取等。
如果密码让您感到烦恼,您可以在创建 SSH 密钥时输入一个空白密码,密码不是强制性的,但我建议您使用密码来提供额外的保护。
您可能需要编辑.git/config
git 存储库中的文件并更改url
值以使用类似user@host:path-to-git-repo.git
我使用的是 Windows 10,我找到了两种消除密码提示的方法。
确保 ssh 代理已启动并且您已添加密钥
$ eval "$(ssh-agent -s)"
$ ssh-add ~/.ssh/id_rsa
第二个命令将提示您输入密码,然后不会提示您输入在此会话中运行的任何其他 git 命令。
您需要为每个新的 bash 会话再次运行这些命令
从您的密钥文件中删除密码:
$ ssh-keygen -p -f ~/.ssh/id_rsa
出现提示时,只需按 Enter 键即可输入新密码。
选项 2 将永久删除所有 git 命令的密码。当然,它也会使您的密钥文件“不安全”
注意:如果您使用的是 git desktop GUI(版本 1.04+),则 GUI 需要选项 2 才能工作。