捆綁安裝在 Mac 上運行兩次
? k_rails_template git:(main) ? bundle install
Using Local GEMs
Using Local GEMs <----
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/........... <----
Resolving dependencies....
Using rake 12.3.3
.
.
.
我檢查了各種 .zsh 配置以了解那里是否發生了某些事情,并且我已經2.7.6使用.zsh 重新安裝了一個新的 Ruby asdf。
我手動檢查了這些檔案,看看是否有問題
- .zshenv
- .zprofile
- .zshrc
寶石檔案
# frozen_string_literal: true
source 'https://rubygems.org'
gemspec
puts 'Using Local GEMs'
group :development, :test do
gem 'guard-bundler'
gem 'guard-rspec'
gem 'guard-rubocop'
gem 'rake', '~> 12.0'
gem 'rake-compiler', require: false
gem 'rspec', '~> 3.0'
gem 'rubocop'
gem 'rubocop-rake', require: false
gem 'rubocop-rspec', require: false
end
group :test do
gem 'simplecov', require: false
end
gem env
gem env
RubyGems Environment:
- RUBYGEMS VERSION: 3.1.6
- RUBY VERSION: 2.7.6 (2022-04-12 patchlevel 219) [x86_64-darwin21]
- INSTALLATION DIRECTORY: /Users/xmen/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0
- USER INSTALLATION DIRECTORY: /Users/xmen/.gem/ruby/2.7.0
- RUBY EXECUTABLE: /Users/xmen/.asdf/installs/ruby/2.7.6/bin/ruby
- GIT EXECUTABLE: /usr/local/bin/git
- EXECUTABLE DIRECTORY: /Users/xmen/.asdf/installs/ruby/2.7.6/bin
- SPEC CACHE DIRECTORY: /Users/xmen/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /Users/xmen/.asdf/installs/ruby/2.7.6/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-21
- GEM PATHS:
- /Users/xmen/.asdf/installs/ruby/2.7.6/lib/ruby/gems/2.7.0
- /Users/xmen/.gem/ruby/2.7.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- "gem" => "--no-document"
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /Users/xmen/.asdf/installs/ruby/2.7.6/bin
- /usr/local/opt/[email protected]/bin
- /Users/xmen/.asdf/shims
- /Users/xmen/.asdf/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
- /usr/local/go/bin
- /usr/local/MacGPG2/bin
- /usr/local/share/dotnet
- ~/.dotnet/tools
- /Library/Apple/usr/bin
- /Library/Frameworks/Mono.framework/Versions/Current/Commands
- /Users/xmen/Library/Python/3.9/bin
- /Users/xmen/.dotnet/tools
- /Users/xmen/.gem/ruby/2.7.0/bin
- /usr/local/opt/fzf/bin
uj5u.com熱心網友回復:
bundle install沒有運行兩次。執行第二次提取的是內部捆綁器邏輯。
# Gemfile
source "https://rubygems.org"
gem "guard-bundler"
例如,使用 bundler v2.2.6上面的Gemfile將使 bundler 運行兩個 fetch 請求。
Fetching gem metadata from https://rubygems.org/..............
Fetching gem metadata from https://rubygems.org/.
第二個請求來自雙重檢查邏輯:
https://github.com/rubygems/rubygems/blob/bundler-v2.2.6/bundler/lib/bundler/source/rubygems.rb#L261
令人驚訝的是,第二次獲取是對bundler gem 本身的雙重檢查。此拉取請求在v2.2.7中修復了該問題。
升級到 bundler v2.2.7只會發出一個請求。但是,隨著Gemfile中的 gem越來越多,捆綁器的檢查將越來越多。我假設更高版本也有更多的性能/邏輯改進。
--verbose您可以通過使用選項了解為什么 bundler 正在運行第二次提取:
$ bundle update --verbose
...
Double checking for ["bundler"] in rubygems repository https://rubygems.org/ or installed locally
Fetching gem metadata from https://rubygems.org/
Looking up gems ["bundler"]
...
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/498040.html
