如何在不重新inputSSH密码的情况下执行`git pull`?

有没有可能configurationgit/ssh所以我不需要input我的密码每次我想要执行git pull ? 请注意,回购是github上的私人回购。

或者,或者,从私人Github仓库自动化代码部署的最佳做法是什么?

其他细节:运行基于Fedora的公共AMI的EC2实例。

看看这个链接https://help.github.com/articles/working-with-ssh-key-passphrases/

但我不想每次使用密钥都input长密码!

我也不! 值得庆幸的是,有一个叫做ssh-agent的漂亮的小工具可以安全地保存你的密码,所以你不必重新input密码。 如果您使用的是OSX Leopard或更高版本,您的钥匙可以保存在系统的钥匙链中,让您的生活更加轻松。 大多数linux安装程序会在您login时自动为您启动ssh-agent。

我启用了密码caching,如下所述:

https://help.github.com/articles/set-up-git#password-caching

要caching一个月的密码:

 git config --global credential.helper 'cache --timeout=2628000' 

你的情况现在已经解决了,但是对于我来说,事实是我在~/.ssh/

为了解决这个问题,我必须创build一个名为~/.ssh/config的文件并添加下面这行:

 IdentityFile ~/.ssh/my_key2_rsa 

~/.ssh/my_key2_rsa是我的钥匙。

我不知道为什么还没有人报道过这个。 但最简单的方法是简单地在.ssh / config文件的顶部添加一行AddKeysToAgent yes 。 当然, ssh-agent必须事先运行。 如果没有运行(通过prep ssh-agent检查),那么只需运行它eval $(ssh-agent)

我可以证实这是有效的,因为之前,我有一个大项目,有许多子模块,对于被克隆的每个子模块,我必须键入我的SSH密码。 上面的技巧之后,我不需要再做了。

解决scheme的来源是https://askubuntu.com/questions/362280/enter-ssh-passphrase-once/853578#853578