Capistrano:上限部署与上限部署:更新

时间:2013-07-11 19:16:59

标签: capistrano

cap deploycap deploy:update之间有什么区别?

我认为后者只是做了更新 - 任何更好的见解?

2 个答案:

答案 0 :(得分:3)

啊哈 - 阅读来源(deploy.rb

namespace :deploy do
  desc <<-DESC
    Deploys your project. This calls both `update' and `restart'. Note that \
    this will generally only work for applications that have already been deployed \
    once. For a "cold" deploy, you'll want to take a look at the `deploy:cold' \
    task, which handles the cold start specifically.
  DESC
  task :default do
    update
    restart
  end

因此,deploy执行update,然后执行restart

update只是在服务器上执行更新。

答案 1 :(得分:3)

更新添加新版本文件夹并更改符号链接,但不重新启动。如果从服务器运行迁移,这将非常有用。例如,我们不允许远程数据库访问以便部署迁移,我们使用cap deploy:update,然后登录到服务器并运行迁移,然后进行cap deploy:restart。

如果您想要后台作业(例如,cron作业,而不是长时间运行的守护程序)来获取新的代码更改而不必重新启动Web处理程序,这也很有用。