我不想每次执行 git push 或 git pull 到/从我通过 ssh 访问的远程存储库(通过用户名和密码登录)时输入我的 ssh 密码。
ssh-agent
git config --global credential.helper 'cache --timeout=3600'
不工作。每次我想推/拉时,我仍然需要输入密码。
我还需要做什么才能使其正常工作?
如果我执行
ssh-agent bash
然后尝试在同一个终端中推送两次,我仍然需要输入两次密码。
我不想每次执行 git push 或 git pull 到/从我通过 ssh 访问的远程存储库(通过用户名和密码登录)时输入我的 ssh 密码。
ssh-agent
git config --global credential.helper 'cache --timeout=3600'
不工作。每次我想推/拉时,我仍然需要输入密码。
我还需要做什么才能使其正常工作?
如果我执行
ssh-agent bash
然后尝试在同一个终端中推送两次,我仍然需要输入两次密码。
ssh-agent
需要为你的环境提供变量,所以正确的使用方法是:然后,您可以使用
ssh-add
将密钥添加到您的代理。阅读man ssh-agent;man ssh-add
。例如(YMMV):
不使用
openssh
标准工具。SSH-agent 用于在使用之前添加的密钥(现在它们也可以在首次使用时添加,但情况不同)。如果您希望他能够传递密码,有
sshpass
,它可以从环境变量中读取密码,但请注意,从安全角度来看,这当然不推荐。如果您关心安全性,请设置公钥身份验证。