簡體   English   中英

盡管已經使用npm安裝了,但我是否需要在lib或vendor文件夾中保留js庫的副本?

[英]Do I need to keep a copy of js library in lib or vendor folder though already installed using npm?

問題1:我正在使用npm安裝我的項目依賴庫,並且將其存儲在npm_modules文件夾中。 是否有必要在lib文件夾或vendor文件夾中保留angular.jsangular-route.js類的庫副本? 我可以看到很少有人使用lib文件夾或供應商文件夾以永久方式存儲庫。 看到這個我很困惑。

問題2:我是否需要將node_modules文件夾復制/粘貼到生產環境中,或者僅在項目文件夾的命令提示符下運行npm install命令以將所有依賴項安裝在生產環境中。 依賴庫如何提升為生產環境?

謝謝您的建議。

實際上,這完全取決於您需要如何將站點部署到生產環境。 最終,你可能會想,以你的所有的JS文件打包成一個或幾個文件,這些文件微細化以及用gzip壓縮發送。

如何捆綁它們取決於您。 有很多選擇:

  • Browserify
  • 的WebPack
  • 咕unt聲
  • 還有更多

關於是否需要在版本控制下保留這些捆綁的javascript文件的副本,我認為可以歸結為一個關鍵問題:您可以在生產服務器上運行構建過程(例如使用NodeJS的一種工具),還是在創建zip文件或安裝程序的構建服務器上? 如果是這樣,則您不需要包括它們,只需獲取構建服務器或生產服務器即可從版本控制, npm install檢出最新副本,然后運行構建過程。

但是,如果您能做的最好是讓生產服務器從源代碼管理中檢出文件,那么您將希望包括要在存儲庫中使用的文件的最終版本。

應盡可能避免將生成的文件 (例如捆綁的javascript文件)保留在源代碼控制存儲庫中。 因為否則,每個提交都必須包含對源文件的更改以及對生成文件的相應更改。 后者只是噪音,每位查看差異/補丁進行提交的開發人員都必須忽略后者。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM