class Gem::Tasks::SCM::Tag

def tag!(name)

Returns:
  • (Boolean) -

Parameters:
  • name (String) --
def tag!(name)
  case @project.scm
  when :git then run 'git', 'tag', name
  when :hg  then run 'hg', 'tag', name
  when :svn
    branch   = File.basename(@project.root)
    tags_dir = if branch == 'trunk'
                 # we are in trunk/
                 File.join('..','tags')
               else
                 # must be within branches/$name/
                 File.join('..','..','tags')
               end
    tag_dir = File.join(tag_dirs,name)
    FileUtils.mkdir_p tags_dir
    FileUtils.cp_r '.', tag_dir
    return run('svn', 'add', tag_dir)
  else
    true
  end
end