是否可以进行配置,git/ssh
这样我每次执行一次输入时都不必输入密码git pull
?请注意,该仓库是github上的一个私有仓库。
或者,从私有Github存储库中自动执行代码部署的最佳实践是什么?
其他详细信息: EC2实例运行基于Fedora的公共AMI。
是否可以进行配置,git/ssh
这样我每次执行一次输入时都不必输入密码git pull
?请注意,该仓库是github上的一个私有仓库。
或者,从私有Github存储库中自动执行代码部署的最佳实践是什么?
其他详细信息: EC2实例运行基于Fedora的公共AMI。
Answers:
看看这个链接https://help.github.com/articles/working-with-ssh-key-passphrases/
但是我不想每次使用密钥都输入长密码!
我也不!值得庆幸的是,有一个漂亮的小工具
ssh-agent
可以安全地保存您的密码,因此您无需重新输入密码。如果您使用的是OSX Leopard或更高版本,则可以将密钥保存在系统的钥匙串中,从而使您的生活更加轻松。大多数Linux安装会在您登录时自动为您启动ssh-agent。
ssh-agent
:rabexc.org/posts/using-ssh-agent
我启用了密码缓存,如下所述:
https://help.github.com/articles/caching-your-github-password-in-git/#platform-linux
要将密码缓存一个月:
git config --global credential.helper 'cache --timeout=2628000'
试试这个:
git config credential.helper store
您必须输入一次密码,然后将其存储在root文件夹中。
正如评论所指出的那样,这不适用于SSH密码,仅适用于HTTPS密码。
您的情况现在已经确定,但是对我来说,事实是我在 ~/.ssh/
要解决该问题,我必须创建一个名为的文件~/.ssh/config
并添加以下行:
IdentityFile ~/.ssh/my_key2_rsa
~/.ssh/my_key2_rsa
我的钥匙在哪里。
我不知道为什么还没有人报告这个。但是最简单的方法是AddKeysToAgent yes
在.ssh / config文件的顶部简单地添加一行。当然ssh-agent
必须事先运行。如果它没有运行(通过ssh-agent
终端上的命令检查),则只需运行它eval $(ssh-agent)
我可以确认这是可行的,因为在我的项目中有很多子模块,并且对于每个要克隆的子模块,我都必须输入ssh密码。经过以上技巧之后,我不再需要这样做了。
解决方案的来源是/ubuntu/362280/enter-ssh-passphrase-once/853578#853578