rails app部署设置失败

时间:2013-06-05 02:26:24

标签: ruby-on-rails deployment github capistrano web-deployment

我正在关注this site

我在第6步(6。部署!)。

所以我依次在命令下面执行。

$ git add .
$ git commit -am "add deployment configs"
$ git push master
$ cap deploy:setup

所有命令都已成功执行。

接下来,我尝试cap deploy命令。

但是我收到了一些错误。

$ cap deploy
  * 2013-06-04 19:19:27 executing `deploy'
    triggering before callbacks for `deploy'
  * 2013-06-04 19:19:27 executing `deploy:check_revision'
WARNING: HEAD is not the same as origin/master
Run `git push` to sync changes.
$

所以,我尝试git push并收到一条消息......

$ git push
Everything up-to-date

...

问题是什么?

我不知道......

我该怎么办?

更多信息---

$ git branch
* master
$ git status
# On branch master
nothing to commit (working directory clean)
$ git remote
origin

修改

我也试过$ git push origin master。我收到的信息是nothing to commit (working directory clean)

EDIT2:

$ git rev-parse HEAD
c3e758f2d47bb0bc126de91560905a1893fe08c6
$ git rev-parse origin/master
c3e758f2d47bb0bc126de91560905a1893fe08c6

4 个答案:

答案 0 :(得分:3)

检查当前分支和deploy.file。

在deploy.file中,它可能存在以下代码段:

task :check_revision, roles: :web do
   unless `git rev-parse HEAD` == `git rev-parse origin/master`
     puts "WARNING: HEAD is not the same as origin/master"
     puts "Run `git push` to sync changes."
     exit
   end
end

所以你必须在这段代码中设置相同的分支。

要修复,请更改以下行:

 unless `git rev-parse HEAD` == `git rev-parse origin/${YOUR_CURRENT_BRANCH}`

答案 1 :(得分:1)

以下对我来说很好。 尝试:

git remote show origin

如果您收到错误,请询问所有遥控器:

git remote -v

并设置远程原点:

git remote add origin git@bitbucket.org:xyz/abc.git

现在'显示起源'将提供正确的答案:

git remote show origin

答案 2 :(得分:0)

尝试:

git push origin master

看起来您可能没有将代码推回到远程仓库。

您应该可以编辑.git / config文件,以便以后只需输入“git push”

答案 3 :(得分:0)

我认为您的deploy.rb文件设置不正确。检查第14行,您的存储库已设置。确保它与你的github repo匹配。

如果这不起作用,请尝试以下操作:在task :check_revision, roles: :web do添加以下行后:

puts `git rev-parse HEAD`
puts `git rev-parse origin/master`

希望这会为您提供更多信息,您可以发布结果。