據我所知rails:freeze:gems
和耙gems:unpack
都把寶石放在/vendor
。 rails:freeze:gems
將它們放置到/vendor/rails
,gems:unpack
將它們放置到/vendor/gems
。然而,對我來說,重點似乎是一樣的。在這兩種情況下,我們的目標都是在開發過程中修復寶石及其版本。還有其他的區別嗎?在我看來,現在重複..耙路軌之間有什麼區別:凍結:寶石和耙寶石:解壓?
7
A
回答
7
從我的理解,寶石:解壓將解開任何第三方寶石您的應用程序需要到供應商/寶石。
rails:freeze:gems只會凍結那些與rails本身有關的寶石,所以它會將您的應用凍結到特定版本的rails。因此不同的/ vendor/rails目錄。
要多加評論了一下:
有這一行到config/environment.rb
# Specifies gem version of Rails to use when vendor/rails is not present RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
所以在默認情況下,軌道將檢查如果供應商/導軌目錄存在,並且使用的版本那些寶石,如果它。如果沒有,您必須設置它將使用哪個版本的導軌,並且導軌會嘗試從本地系統中獲取這些寶石。
因此,我所看到的兩個命令之間的唯一區別是rails:freeze:gems
只會將rails文件轉儲到供應商/導軌中,這正是導軌所希望的。
您想使用gem:unpack
的原因是爲了轉儲應用程序依賴的第三方gems,因此無論您的應用程序在哪裏運行,都不需要在本地安裝這些gems。
你可以把rails:freeze:gems
想象成一個快捷方式,它只是將rails的一個gem:unpack
gems放到目錄rails(/ vendor/rails)中,這樣你就不必手動去做了。但是,是的,幕後我預計rails:freeze:gems
可能使用gem:unpack
相關問題
- 1. 紅寶石問題(bug) - 在耙寶石
- 2. 鏈輪 - 導軌和鏈輪寶石之間有什麼區別?
- 3. 爲什麼運行耙寶石:解壓縮導致Gem :: FilePermissionError
- 4. 缺少RedCloth寶石,但`耙寶石:install`什麼也不做
- 5. 導軌 - 耙:寶石:安裝 - 不安裝寶石
- 6. 耙寶石:安裝錯誤
- 7. 耙寶石安裝錯誤
- 8. 紅寶石耙 - 錯誤
- 9. 當「耙寶石」返回沒有狀態的寶石時,這是什麼意思?
- 10. 'mandrill-api'寶石和'mandrill_mailer'寶石之間的區別
- 11. 硒和硒寶石有什麼區別?
- 12. 寶石和插件有什麼區別?
- 13. 寶石和插件有什麼區別?
- 14. 問題與耙子和mysql2寶石
- 15. ..和...之間的區別紅寶石
- 16. 什麼是「json的」寶石和‘json_pure’寶石的區別?
- 17. 問題與sqlite3寶石同時使用紅寶石,sinatra&耙
- 18. 在寶石的耙子任務中需要一塊寶石
- 19. 耙寶石:安裝,如何防止安裝特定的寶石?
- 20. 安裝解壓寶石寶石
- 21. 耙寶石:安裝RAILS_ENV =測試
- 22. 由紅寶石/耙文件清單:
- 23. 包括寶石中的耙子任務
- 24. 流程單quoutes在耙/紅寶石
- 25. 運行耙失敗,寶石:: GemNotFoundException ERR
- 26. 安裝Gitorious - 耙寶石:安裝中止
- 27. 運行耙寶石後出錯:安裝
- 28. 紅寶石企業版 - 耙未找到
- 29. 未找到耙寶石問題
- 30. 安裝寶石凍結寶石之前激活?
謝謝!它澄清了很多事情。我玩過任務。然而,在我看來,怪胎以不同的方式處理鐵軌寶石和其他寶石。在某種程度上,第三方和鐵軌寶石都只是寶石。我認爲bundler處理這種方式沒有任何區別。 – fifigyuri 2010-01-27 22:43:43