我已經設置了NodeJS
的openshift
墨盒。在我的package.json
中,我擁有我項目的所有依賴項,其中npm
安裝在node_modules
文件夾中。我已將它們添加到.gitignore
,但每當我推送該項目時,openshift盒式磁帶都將下載所有依賴關係。如何禁用NodeJS的openshift依賴關係下載?
我該如何禁用它?
我試圖設置環境變量NPM_CONFIG_PRODUCTION
到true
如here所述,但它沒有幫助。
我已經設置了NodeJS
的openshift
墨盒。在我的package.json
中,我擁有我項目的所有依賴項,其中npm
安裝在node_modules
文件夾中。我已將它們添加到.gitignore
,但每當我推送該項目時,openshift盒式磁帶都將下載所有依賴關係。如何禁用NodeJS的openshift依賴關係下載?
我該如何禁用它?
我試圖設置環境變量NPM_CONFIG_PRODUCTION
到true
如here所述,但它沒有幫助。
除非您不聲明它們,否則無法禁用依賴項的安裝。如果你的項目依賴於某些庫,那麼openshift需要像在本地機器上那樣安裝它們。
這意味着只要你deploy your app到openshift構建過程進行npm install
,這將使安裝任何缺少的依賴關係到node_modules
文件夾。
請注意,與您正在做的相反並跟蹤此文件夾(git add node_modules/mydep
)的某些依賴關係將使您的部署過程成爲bit faster。
另外:什麼NPM_CONFIG_PRODUCTION
確實是設置是否devDependencies
安裝與否,這意味着如果你正在使用的依賴這僅僅是局部的(發展),你應該設置他們在您的package.json
文件像這樣:
"devDependencies": {
"webpack": "~1.0.0"
},
感謝您的評論,有沒有辦法修改構建過程?因爲我使用'webpack'來創建一個包,所以我需要模塊來進行開發。那麼用這些依賴關係進行開發並在沒有它們的情況下部署最好的方法是什麼? – itaied
檢查我的編輯,你應該把它設置在'devDependencies'而不是'dependencies' –
謝謝它的工作原理! – itaied