Capistrano Deploy要求Git的用户名,但在我输入之前移到新行

时间:2012-12-27 21:11:45

标签: ruby-on-rails-3 github capistrano

使用Capistrano部署我的rails 3应用程序时,它会进入capistrano执行此命令的步骤:

   * executing "if [ -d /var/www/appname/shared/cached-copy ]; then cd /var/www/dflabs1/shared/cached-copy && git fetch -q origin && git fetch --tags -q origi
n && git reset -q --hard d0a1373a3634935de1a75f377698ba53574fe580 && git clean -q -d -x -f; else git clone -q https://github.com/username/dflabs1.git /va
r/www/appname/shared/cached-copy && cd /var/www/appname/shared/cached-copy && git checkout -q -b deploy d0a1373a3634935de1a75f377698ba53574fe580; fi"
    servers: ["11.10.1.162"]
Password: 
    [11.10.1.162] executing command
 ** [11.10.1.162 :: out] Username for 'https://github.com':

问题是当它输出"用户名为' https://github.com'" ,光标跳转到一个新行,而不让我输入用户名。如果我尝试在新行上输入用户名,则部署无效。这在Ubuntu 12.04桌面上发生在Ubuntu 12.04服务器上。

我尝试添加' set:scm_username' deploy.rb的选项,但没有效果。我试过在Ubuntu终端和Aptana里面的终端视图。

1 个答案:

答案 0 :(得分:0)

尝试将Deployment-Server的SSH-Key导入GitHub。

您可以在此处执行此操作:SSH Keys。 您可以在此处找到SSH-Keys(Github)的教程:Generating SSH Keys

[编辑] 实际上我只是自己做了并检查输出。

您确定在deploy.rb中正确设置了set :repository, "git@github.com:[GitHub-User]/[GitHub-Repository-Name].git"吗?

因为你的

else git clone -q https://github.com/username/dflabs1.git

在这里看起来像

else git clone -q git@github.com:[GitHub-User]/[GitHub-Repository-Name].git