我已经在服务器端设置了一个空的git repo,并且设置了一切。
上限部署:设置执行此操作
[109.etc] env RAILS_ENV=production sh -c 'git clone git@109.etc:srv/paintings.git /srv/paintings/current'
** [out :: 109.etc] Initialized empty Git repository in /srv/paintings/current/.git/
** [out :: 109.etc] The authenticity of host '109.etc (109.etc)' can't be established.
** [out :: 109.etc] RSA key fingerprint is e9:af:d6:d3:0e:f5:de:a3:4a:31:6e:8e:4a:c7:b7:ee.
** [out :: 109.etc] Are you sure you want to continue connecting (yes/no)?
*当我输入yes或y时,它只是“挂起”似乎没有发生...... *已经尝试过 - 在部署上限后调试:设置可能出错的地方?
答案 0 :(得分:2)
卡皮斯特拉诺基本上是非互动的;如果这样的提示弹出,你不能只是告诉它“是”,不幸的是,因为你输入的命令不会被发送到远程主机。你必须手动做“是”。
要解决此问题,请将主机密钥添加到该用户的known_hosts文件中。所以,SSH进入任何正在进行部署的机器,su进入该用户,并尝试SSH进入109.etc
。您将收到相同的警告提示,您将能够输入“是”,这次它将起作用。然后,按照正常情况cap deploy
,您将不再收到此消息。