0

这是我的,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
4

1 回答 1

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

请注意,这是未经测试的

于 2013-08-01T20:02:59.590 回答