SORU
13 ŞUBAT 2012, PAZARTESİ


Benim Gemfile tam sürüm belirtmek gerekir mi?

Rubygems.org üzerinde taşlar bir sürü tam sürüm yerine sürüm bunları belirtmek önermek fark ettim. Örnek...

The haml-rails gem...

gem "haml-rails", "~> 0.3.4"  # "$ bundle install" will acquire the 
                              # latest version before 1.0.

Ancak, Bundler docs göre daha iyi bu şekilde tam sürüm nas? l olacak bana öyle geliyordu...

gem "haml-rails", "0.3.4"

Haml-raylar gem ve tüm bağımlılıklarından ileri drift olmaz işte. Farklı bir makine, bir kaç hafta sonra proje kontrol ve $ bundle install çalıştırırsanız tam olarak belirttiğiniz her şeyi aynı sürüm olacak.

Nokta bültenleri şarabı gördüm, ve düşündüm oldu Toplayıcı fikrine parçası "Bundle.lock" tüm gem sürümlerini.

Ama rubygems.org kullandıkları "~>" belki de ben bir şey eksik o kadar çok mu?

Herhangi bir açıklama anlama Toplayıcı ve gem yönetimi bana çok yardımcı olurdu.

CEVAP
13 ŞUBAT 2012, PAZARTESİ


Bu Gemfile amacı da budur.dosya - bir Gemfile bundle install çalıştırma kilidi.kilit sadece yükler bağımlılıklar orada yer kullanarak mevcut; yeniden çözmek Gemfile değil. Bağımlılıklar update / gem sürümleri güncellemek için, daha sonra açıkça yapmak zorunda sizin Gemfile güncelleme bundle update,.dosya kilidi.

Bir Gemfile olmasaydı.kilit, üretim için kod dağıtma bahsettiğin gibi, bağımlılıkları ve mücevher sürümleri değişebilir çünkü büyük bir sorun olurdu.

Kısacası, genel olarak güvenli rubygems.org tavsiye olarak karamsar sürüm kısıtlaması operatörü (~>) kullanıyor olmalıdır. Sadece bundle update bir şey keser emin olmak için yapın, sonra yeniden çalıştırın testlerinizi emin olun.

Gemfile biraz daha Bilgi olan Yehuda nice article Katz var.kilit.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DRDAnimation

    DRDAnimation

    28 EYLÜL 2012
  • Fuse

    Fuse

    21 Kasım 2005
  • IGN

    IGN

    19 EYLÜL 2006