Composer 是 PHP 的一個依賴管理工具。如果你是一名 PHP 開發人員,那麼你很可能每天都在使用它並且頻繁的運行命令 require
, install
和 update
。也許你並沒有意識到, 我們可以使用一些其他的Composer指令,來更輕鬆的使用它。
它有許多的命令可以使用,但今天我將分享我使用的並且每天都有幫助的 6 個命令。
先說下 show
指令。它允許您查看專案的所有已安裝套件(包括依賴項),以及查看相關套件的說明。所有這些資訊都可以在Composer鎖定檔案(composer.lock)中找到, 但是使用 show
命令相對來說是一種更簡單、更方便的一種查看包資訊的方法。
要列出所有已安裝的套件及其版本號碼和說明,只需使用show
:
composer show
有時候把這些資訊用依賴關係樹的形式查看會更容易理解, 可以透過--tree
or -t
參數:
composer show -t
如果要篩選回傳的包,可以使用通配符傳遞一個額外的字符字串參數*
:
composer show 'symfony/*'
這將傳回所有已安裝的symfony套件。注意這裡的引號, 如果您使用的是 bash shell,不需要加這個引號, 但是如果您使用的是 zsh 你不用引號的話就會報 ‘no matches found’ 錯誤。
如果要查看有關特定套件的信息,需要完整套件名稱:
composer show laravel/framework
這將向您顯示安裝的版本、它的許可證和依賴項以及它在本地安裝的位置等資訊。
如果您想知道安裝特定軟體包的原因,可以使用why 命令來確定哪些依賴項需要它:
composer why vlucas/phpdotenv
why
為什麼是depends命令的別名,但就我個人而言,我發現使用'why' 更容易記住。您可以使用--tree
或-t
標誌在依賴樹中查看此資訊:
composer why vlucas/phpdotenv -t
why-not 指令(別名為
prohibits)。例如,Laravel 最近發布了一個新的5.8版本的框架; 我們可以使用
why-not 命令檢查任何阻止我們更新
laravel/framework 套件的套件:
composer why-not laravel/framework 5.8
--tree 或
-t 標記在依賴關係樹中查看此資訊:
composer why-not laravel/framework 5.8 -t
composer update 指令前,你或許想偵測一下已安裝的套件,哪些有可以升級的。這可以使用
outdated 指令。
composer outdated
composer show -lo 的別名之一。
outdated 指令,以
--minor-only 或
-m 參數:
composer outdated -m
install 、
update 指令的參數
--prefer-source 來處理原始碼安裝的依賴項。然後,如果我修改了任何這些依賴項,我需要一種快速檢查哪些套件已被修改的方法。
status 指令提供了一個方便的方法。
--verbose 或
-v 參數來查看本地修改的軟體包和檔案:
composer status -v
licenses 命令,用於查詢許可的完整列表:
composer licenses
composer使用教程專欄!
以上是推薦六個鮮為人知的Composer指令的詳細內容。更多資訊請關注PHP中文網其他相關文章!