Bundler يقوم Bundler بإدارة تبعيات التطبيق خلال دورة حياته بالكامل لمشاريع لغة Ruby.
أوامر سطر الأوامر الشائعة
bundle install # تثبيت جميع الحزم (gems) المطلوبة
bundle install -j4 # تثبيت متوازٍ باستخدام 4 مسارات عمل
bundle update # تحديث جميع الحزم إلى أحدث الإصدارات المتوافقة
bundle update rails # تحديث حزمة محددة فقط
bundle outdated # فحص الحزم القديمة القابلة للتحديث
bundle exec <command> # تشغيل الأمر في سياق حزم المشروع
bundle show <gemname> # عرض مسار دليل تثبيت الحزمة
bundle info <gemname> # عرض البيانات الوصفية للحزمة
bundle gem <my_gem> # إنشاء هيكل حزمة gem جديدة
بناء جملة ملف Gemfile
التصريحات الأساسية
source 'https://rubygems.org'
gem 'rails', '~> 7.1.0'
gem 'pg', '>= 1.5'
gem 'puma'
مراجع Git و GitHub
# مستودع GitHub مباشر
gem 'devise', github: 'heartcombo/devise'
# فرع أو وسم Git محدد
gem 'devise', github: 'heartcombo/devise', branch: 'main'
gem 'nokogiri', git: 'https://github.com/sparklemotion/nokogiri.git', tag: 'v1.16.0'
مجموعات التبعيات
group :development, :test do
gem 'rspec-rails'
gem 'factory_bot_rails'
end
group :production do
gem 'aws-sdk-s3'
end
النشر في بيئة الإنتاج
في خطوط أنابيب CI/CD والخوادم، قم بالتثبيت مع وضع deployment لمنع تعديل ملف Gemfile.lock:
# تكوين نشر Bundler الحديث
bundle config set --local deployment 'true'
bundle config set --local without 'development test'
bundle install
تجاوز الحزم المحلية
توجيه حزمة gem إلى مسار مجلد محلي للتطوير النشط:
bundle config local.my_gem ~/Developer/Projects/my_gem