2017-10-11 87 views
0

我來自Python和JavaScript背景。如何執行軟件包安裝位置

開發JavaScript項目時,依賴項安裝在項目根目錄下的node_modules目錄中。

開發Python項目時,通常使用virtualenvwrapper。在這種情況下,依賴關係安裝在虛擬環境中,默認位於~/.virtualenvs/<project_name>

現在我需要爲項目使用紅寶石工具。看起來像上面描述的類似設置最有希望的工具是bundler。

但是,bundler的默認安裝位置是系統範圍的。我認爲這是有害的。

對於我的系統之一,它會提示輸入密碼,此時我仍然可以中止。

但是,對於我的其他系統,我可以寫入全局ruby安裝。我在這裏使用安裝紅寶石的自制軟件。 Bundle將只安裝全局依賴關係。

我知道我可以通過添加--path來指定安裝位置,但這很容易忘記。

執行安裝路徑的一種方法是提交.bundle/config。它只會包含這一點:

--- 
BUNDLE_PATH: "." 

但是,一些使用谷歌搜索顯示它沒有建議提交此文件。

推薦使用捆綁器來防止意外全局安裝的方法是什麼?

+0

你爲什麼不試試rvm gemsets https://rvm.io/gemsets? – Gaurav24

回答

0

誰說這是偶然?這真的取決於你在這裏討論的背景。我設置了我的Ruby,以便bundle install不需要sudo就可以工作,它全部通過rbenv自動完成。如果作爲用戶級安裝完成,則rvm也是如此。

當談到部署應用程序,並且想要確保其正確部署時,這就是Capistrano這樣的工具的作用:創建一個部署腳本,每次都會應用正確的過程。

從開發角度來看,在.bundle/config中檢查確實很粗魯,就像檢查您可能具有的任何其他用戶特定偏好一樣。它不會與其他團隊成員發生衝突。