我尝试使用美娜部署私有存储库。
我在服务器上生成了一个公共SSH密钥,然后将其添加到我的GitHub用户中。登录到我的服务器后,我可以做一个git clone git@github.com:Access4all/a4aa2.git。但是,在我的本地机器上,在执行mina deploy时,我会得到以下错误:
-----> Loading environment
-----> Creating a temporary build path
-----> Fetching new git commits
Warning: Permanently added the RSA host key for IP address '192.30.252.130' to the list of known hosts.
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
! ERROR: Deploy failed.
-----> Cleaning up build 在我看来,奇怪的是,IP 192.30.252.130被添加到已知主机列表中,尽管我以前在手动ssh‘’ing时已经这样做了。我的服务器的IP是192.30.252.130 (bellatrix.uberspace.de)!
我的deploy.rb配置部分如下所示:
set :server_name, 'bellatrix'
set :user, 'a4aa2'
set :repository_name, 'a4aa2'
set :domain, "#{server_name}.uberspace.de"
set :deploy_to, "/home/#{user}/rails"
set :repository, "git@github.com:Access4all/#{repository_name}.git"
set :branch, 'master'我在概念上理解错了吗?
更新
我只是注意到,在执行手动git克隆时,密码是被标记的:
[a4aa2@bellatrix tmp]$ git clone "git@github.com:Access4all/a4aa2.git"
Initialized empty Git repository in /home/a4aa2/tmp/a4aa2/.git/
Enter passphrase for key '/home/a4aa2/.ssh/id_rsa': 我想米娜就是因为这个而失败的。这是正常的吗?为什么我要输入密码?我怎么才能避开它呢?
更新
根据步骤3:将密钥添加到ssh-agent中。,我可以将密码保存到ssh代理。
但我似乎无法像这里所描述的那样拯救它。
我可以这样说:
[a4aa2@bellatrix tmp]$ ssh-add ~/.ssh/id_rsa
Enter passphrase for /home/a4aa2/.ssh/id_rsa:
Identity added: /home/a4aa2/.ssh/id_rsa (/home/a4aa2/.ssh/id_rsa)然后,我可以成功地克隆存储库,而不需要输入密码。但是在注销和再次登录之后,我必须再次输入它。不知怎的,ssh-代理似乎在会话之间不起作用?
发布于 2015-03-16 12:46:08
我刚刚发现,我的主机上不需要私钥/公钥对,因为我只需激活mina的forward_agent选项:
set :forward_agent, truehttps://stackoverflow.com/questions/29073717
复制相似问题