每当我需要在Win10开发笔记本电脑上的bitbucket.org上进行git pull
或git push
回购时,几乎每次我需要添加身份才能做到这一点。这是ssh -T
:
$ ssh -T git@bitbucket.org
Permission denied (publickey).
然后在eval "$(ssh-agent)
和ssh-add ~/.ssh/id_rsa
之后,我可以git pull
或git push
。下次我需要再次重复这个过程。为什么身份会不断失去?我怎样才能为所有人添加身份?
答案 0 :(得分:1)
一个良好的开端是了解您正在采取的步骤以及ssh-agent
如何运作或如何做得更好。
SSH-Agent是一个将您的私钥存储在内存中的程序,可以避免为每个连接键入密码。您的shell使用环境变量记住与此程序的连接。因此,如果您打开新的shell运行ssh-agent
并关闭shell,则会丢失此连接(Windows无论如何都无法集成)。此外,重新启动计算机(显然)会停止正在运行的代理程序。
但你可以使用
$ ssh -T -i /path/to/id_rsa git@bitbucket.org
也会这样做(如果有的话,你必须插入密码)。或者更清楚地使用ssh_config
中的~/.ssh/config
,其中可以包含:
Host bitbucket.org
User git
IdentityFile /path/to/id_rsa
然后使用
连接$ ssh -T git@bitbucket.org
也会奏效。