Bundler в Ruby - это инструмент для управления зависимостями в проектах на Ruby. Он помогает устанавливать необходимые гемы (библиотеки) для проекта и контролировать их версии, чтобы обеспечить совместимость и воспроизводимость окружения.
Основная функциональность Bundler заключается в создании файла Gemfile, где перечисляются все зависимости проекта (гемы и их версии), и управлении установкой этих зависимостей с помощью команды bundle install.
Например, если у вас есть файл Gemfile с таким содержимым:
source 'https://rubygems.org'
gem 'rails', '6.1.4'
gem 'pg', '1.2.3'
gem 'rspec', '3.10.0'
Затем, после запуска bundle install, Bundler установит указанные версии гемов, если они еще не установлены в вашем проекте.
Bundler также позволяет использовать команду bundle exec, чтобы запускать команды в контексте установленных гемов, обеспечивая изоляцию окружения проекта от глобальных установок.
Например:
bundle exec rails server
Это запустит Rails-сервер, используя версии гемов, указанные в файле Gemfile.lock (файл, в котором сохранены конкретные версии установленных гемов для точной воспроизводимости окружения).
Bundler - мощный инструмент для работы с зависимостями в Ruby-проектах, обеспечивая их управление и изоляцию, что помогает создавать стабильные и воспроизводимые приложения.
Документация по Bundler https://bundler.io/docs.html