我有一個項目目前在生產,但仍在積極開發。我爲它經常添加新的寶石和功能。在我的最後一個版本之前,我的一些代碼在我的開發環境中崩潰了,我發現這是因爲我的一些寶石(特別是CarrierWave和jQuery)已更新,並且沒有使用某些代碼。紅寶石寶石的版本控制最佳實踐
我的問題是,有關版本管理寶石的最佳方式是什麼?有些人似乎說,你應該總是在你的Gemfile中指定版本號......但對於所有的寶石?一些?我知道,對於一些寶石,你可以有存儲,因爲臭蟲等的版本號,但這些不談,在發展中有次在那裏我加入新的寶石,可能需要做一個bundle update
以獲得新的東西工作,但不想破舊的東西。
我有很好的測試,有望推到生產之前發現了很多錯誤,但在發展的時候如何其他用戶確保寶石更新可能不會打破完全不相關的功能?
真棒,謝謝安德烈。這是我懷疑的。所以,我應該運行'bundle show'並從這裏獲取當前版本,然後擴充我的Gemfile?還是有另一個命令顯示我應該使用更好的寶石版本? – FireDragon 2013-02-24 19:55:05
我通常在我的'Gemfile.lock'中檢查版本。但'捆綁秀'也很好。 – 2013-02-25 17:53:52
我最近接手一個正在生產的應用程序,它正在從git倉庫中拉出它的一塊寶石,我只是覺得這很瘋狂,因爲大多數規格現在不在我的開發機器本地運行,因爲該回購項目的負責人也有許多差異,爲什麼我不應該使用git repos進行生產的任何最佳實踐/模式? – DevDude 2014-07-09 05:28:00