25
在Rails的Gemfile,什麼是它們之間的區別:「〜> 4.0.1」,「4.0.1」與Gemfile中沒有版本說明符有什麼區別?
gem "gemname", "~> 4.0.1"
和
gem "gemname", "4.0.1"
和
gem "gemname"
而且什麼都要用在下面這種方式的好處和?
在Rails的Gemfile,什麼是它們之間的區別:「〜> 4.0.1」,「4.0.1」與Gemfile中沒有版本說明符有什麼區別?
gem "gemname", "~> 4.0.1"
和
gem "gemname", "4.0.1"
和
gem "gemname"
而且什麼都要用在下面這種方式的好處和?
第一個會告訴打包商加載任何隨最後(小)號碼而變化的寶石。所以4.0.x其中x是1或更大。
第二隻會加載4.0.1。
第三個,將得到最高的值(取決於Gemfile中其餘gem的需求),還是會得到Gemfile.lock中指定的任何內容(如果有的話)。
我錯過了你的第二個問題。坦率地說,這取決於。大多數情況下,我會選擇第一個選項,因爲它可以讓我選擇錯誤修復而不用擔心它會如何影響我的其他寶石。
謝謝你回答第一部分。那麼問題的第二部分是什麼:還有什麼應該用在哪裏和以這種方式受益?最佳做法是什麼? – JVK
@JVK參考這篇文章的更多細節。 http://stackoverflow.com/questions/9265213/should-i-specify-exact-versions-in-my-gemfile。 –