如果没有使用Capistrano指定标签,我该如何部署主分支?

时间:2013-08-01 19:49:27

标签: capistrano

这是我deploy.rb中的内容,但这总是会部署一个标记。如果我没有指定标记,我想部署master。

set :branch, "master"

set :branch do
  default_tag = `git tag`.split("\n").last

  tag = Capistrano::CLI.ui.ask "Tag to deploy (make sure to push the tag first): [#{default_tag}] "
  tag = default_tag if tag.empty?
  tag
end

1 个答案:

答案 0 :(得分:1)

当然,由于此行tag = default_tag if tag.empty?

,因此始终会部署代码

如果您将master设置为默认代码,如下所示,除非您指定代码,否则它将部署master。

set :branch do
  default_tag = `git tag`.split("\n").last

  tag = Capistrano::CLI.ui.ask "Tag to deploy (make sure to push the tag first): [#{default_tag}] "

  if tag.empty?
    'master'
  else
    tag
  end
end

请注意,这是未经测试的