diff options
author | David RodrÃguez <deivid.rodriguez@riseup.net> | 2021-10-08 13:05:31 +0200 |
---|---|---|
committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2021-10-09 08:05:23 +0900 |
commit | a5bae843ff2b2fe9b46de8766c135489ccda8d9e (patch) | |
tree | fb5c51d5b52b9003b67675c9ab78bd1804d37ec8 | |
parent | 5a34b639fc8f51f2464f36e59f32eff8b3fd2e0f (diff) |
[rubygems/rubygems] Let `update_git` work with whatever branch is checkout out
Unless the `:branch` option is passed.
It's more efficient, and it results in less hardcoding of "master".
https://github.com/rubygems/rubygems/commit/aa5c3409ab
-rw-r--r-- | spec/bundler/support/builders.rb | 10 | ||||
-rw-r--r-- | spec/bundler/update/git_spec.rb | 4 |
2 files changed, 3 insertions, 11 deletions
diff --git a/spec/bundler/support/builders.rb b/spec/bundler/support/builders.rb index 3db84b277d..58e4d147dc 100644 --- a/spec/bundler/support/builders.rb +++ b/spec/bundler/support/builders.rb @@ -553,17 +553,9 @@ module Spec update_gemspec = options[:gemspec] || false source = options[:source] || "git@#{libpath}" - @context.git "checkout master", libpath - if branch = options[:branch] raise "You can't specify `master` as the branch" if branch == "master" - escaped_branch = Shellwords.shellescape(branch) - - if @context.git("branch --list #{escaped_branch}", libpath).empty? - @context.git("branch #{escaped_branch}", libpath) - end - - @context.git("checkout #{escaped_branch}", libpath) + @context.git("checkout -b #{Shellwords.shellescape(branch)}", libpath) elsif tag = options[:tag] @context.git("tag #{Shellwords.shellescape(tag)}", libpath) elsif options[:remote] diff --git a/spec/bundler/update/git_spec.rb b/spec/bundler/update/git_spec.rb index 26ad1b45d3..f35d5857c6 100644 --- a/spec/bundler/update/git_spec.rb +++ b/spec/bundler/update/git_spec.rb @@ -13,7 +13,7 @@ RSpec.describe "bundle update" do end G - update_git "foo", :branch => "omg" do |s| + update_git "foo" do |s| s.write "lib/foo.rb", "FOO = '1.1'" end @@ -48,7 +48,7 @@ RSpec.describe "bundle update" do end G - update_git "foo", :branch => "omg", :path => lib_path("foo") do |s| + update_git "foo", :path => lib_path("foo") do |s| s.write "lib/foo.rb", "FOO = '1.1'" end |