2013-08-29 144 views
5

雖然我熟悉的composer.jsonrequire項下的基本知識,並指定依賴我還沒有完全理解require-dev目的 - 作曲家的文檔狀態:開發需要你什麼時候使用「require-dev」?常見的開發依賴是什麼?

require-dev (root-only)

列表包此軟件包或正在運行的測試, 等。默認情況下,根軟件包的開發需求由 安裝。安裝或更新都支持--no-dev選項, 可防止安裝開發依賴項。

抽象它是有道理的,但我很難想象當我需要這種功能的情況。

  1. require-dev在工作流程中的實際用例是什麼?
  2. 是否有一個示例包(或包)應該位於require-dev而不是require

回答

11

一個常見的例子是phpunit,它在開發中需要運行測試套件,但通常不需要在生產中。它也可以是構建工具或類似的東西。在將所有東西都放入需求中並沒有太大的傷害,這只是意味着你的prod機器上安裝了更多的代碼,並且可能會減慢你的構建,這取決於你如何做。

+0

Gotchya,所以它與開發中的依賴關係無關? –

+1

不,它確實意味着需要開發包的依賴關係,它不涉及依賴關係本身的穩定性。 – Seldaek

+0

如何在運行「作曲家安裝」時設置生產機器以使作曲家能夠識別它在生產機器上? – JoeTidee

相關問題