如何使用capistrano 3部署特定修订版

Alb*_*ert 13 capistrano ruby-on-rails

如何使用Capistrano 3部署特定的git版本?

Capistrano 2.9方法不再适用

$cap -S revision=80655da8d80aaaf92ce5357e7828dc09adb00993 deploy
invalid option: -S
Run Code Online (Sandbox Code Playgroud)

Alb*_*ert 30

参数似乎在Capistrano 3中消失了.您必须设置env变量REVISION ="revision"并将其包含在deploy.rb中

set :branch, ENV["REVISION"] || ENV["BRANCH_NAME"]
Run Code Online (Sandbox Code Playgroud)

  • 在多级环境中,您可能会将其包含在环境文件中(例如`deploy/staging.rb`或`deploy/production.rb`).一个可爱的ruby技巧是使用`fetch`就像这样`set:branch,ENV.fetch('branch','master')` - 如果指定了branch,则使用它,否则将master作为默认值. (11认同)