[前][次][番号順一覧][スレッド一覧]

ruby-changes:55600

From: Takashi <ko1@a...>
Date: Mon, 29 Apr 2019 00:54:25 +0900 (JST)
Subject: [ruby-changes:55600] Takashi Kokubun:2dddd370a1 (trunk): Support `tool/merger.rb removetag` under Git

https://git.ruby-lang.org/ruby.git/commit/?id=2dddd370a1

From 2dddd370a17a33177f0898986ea2b37eabd07f31 Mon Sep 17 00:00:00 2001
From: Takashi Kokubun <takashikkbn@g...>
Date: Mon, 29 Apr 2019 00:53:06 +0900
Subject: Support `tool/merger.rb removetag` under Git

repository.

diff --git a/tool/merger.rb b/tool/merger.rb
index db35ea6..4f787d5 100755
--- a/tool/merger.rb
+++ b/tool/merger.rb
@@ -151,32 +151,31 @@ module Merger https://github.com/ruby/ruby/blob/trunk/tool/merger.rb#L151
       end
     end
 
-def remove_tag intv_p = false, relname
-  # relname:
-  #   * 2.2.0-preview1
-  #   * 2.2.0-rc1
-  #   * 2.2.0
-  #   * v2_2_0_preview1
-  #   * v2_2_0_rc1
-  #   * v2_2_0
-  if !relname && !intv_p.is_a?(String)
-    raise ArgumentError, "relname is not specified"
-  end
-  intv_p, relname = false, intv_p if !relname && intv_p.is_a?(String)
+    def remove_tag(relname)
+      # relname:
+      #   * 2.2.0-preview1
+      #   * 2.2.0-rc1
+      #   * 2.2.0
+      #   * v2_2_0_preview1
+      #   * v2_2_0_rc1
+      #   * v2_2_0
+      unless relname
+        raise ArgumentError, 'relname is not specified'
+      end
+      if /^v/ !~ relname
+        tagname = "v#{relname.gsub(/[.-]/, '_')}"
+      else
+        tagname = relname
+      end
 
-  if /^v/ !~ relname
-    tagname = 'v' + relname.tr(".-", "_")
-  else
-    tagname = relname
-  end
-  tag_url = "#{REPOS}tags/#{tagname}"
-  if intv_p
-    interactive "OK? svn rm -m \"remove tag #{tagname}\" #{tag_url}" do
-      # nothing to do here
+      if svn_mode?
+        tag_url = "#{REPOS}tags/#{tagname}"
+        execute('svn', 'rm', '-m', "remove tag #{tagname}", tag_url, interactive: true)
+      else
+        execute('git', 'tag', '-d', tagname)
+        execute('git', 'push', 'origin', ":#{tagname}", interactive: true)
+      end
     end
-  end
-  system(*%w'svn rm -m', "remove tag #{tagname}", tag_url)
-end
 
     def diff(file)
       if svn_mode?
@@ -243,7 +242,7 @@ when "up", /\A(ver|version|rev|revision|lv|level|patch\s*level)\s*up\z/ https://github.com/ruby/ruby/blob/trunk/tool/merger.rb#L242
 when "tag"
   Merger.tag(ARGV[1])
 when /\A(?:remove|rm|del)_?tag\z/
-  Merger.remove_tag :interactive, ARGV[1]
+  Merger.remove_tag(ARGV[1])
 when nil, "-h", "--help"
   Merger.help
   exit
-- 
cgit v0.10.2


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]