這些composer命令你還不會用嗎?快收藏!

藏色散人
發布: 2021-08-31 16:19:37
轉載
1457 人瀏覽過

這幾個composer指令要認識!以下由composer使用教學專欄為大家介紹常用的composer指令,希望對需要的朋友有幫助!

這些composer命令你還不會用嗎?快收藏!

Composer 是 PHP 的一個依賴管理工具。如果你是一名 PHP 開發人員,那麼你很可能每天都在使用它並且頻繁的運行命令 require, install和 update。也許你並沒有意識到, 我們可以使用一些其他的 Composer 指令,來更輕鬆的使用它。

它有許多的命令可以使用,但今天我將分享我使用的並且每天都有幫助的 6 個命令。
show

先說下 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

如果您想知道安裝特定軟體包的原因,可以使用why 命令來確定哪些依賴項需要它:

composer why vlucas/phpdotenv

why 為什麼是depends命令的別名,但就我個人而言,我發現使用'why' 更容易記住。您可以使用--tree或-t標誌在依賴樹中查看此資訊:

composer why vlucas/phpdotenv -t
why-not

#有時,一個或多個已安裝的軟體包將阻止安裝或更新軟體包。為了檢查是哪些安裝包,我們可以使用 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 -toutdated

在使用composer update 指令前,你或許想偵測一下已安裝的套件,哪些有可以升級的。這可以使用 outdated 命令。

composer outdated

此指令是 composer show -lo 的別名之一。

根據語意化的版本,傳回著色的程式碼,來標示每個包的狀態:

Green: 当前安装包已是最新版本

Yellow: 有可升级的更新, 但可能有不兼容的修改。

Red: 有可用的小版本升级 (一般是bug修复)
登入後複製
如果希望高亮顯示小的升級版本, 可以使用outdated 指令,以-- minor-only 或-m 參數:

composer outdated -m

狀態

我發現自己常常會使用install 、update 指令的參數- -prefer-source 來處理原始碼安裝的依賴項。然後,如果我修改了任何這些依賴項,我需要一種快速檢查哪些套件已被修改的方法。 status 指令提供了一個方便的方法。

您可以使用--verbose 或-v 參數來查看本地修改的軟體包和檔案:

composer status -v

我發現使用verbose 標記是使用此命令最有用的方法。

許可證

最後,知道您安裝的每個軟體包的許可證是非常有用的。 Composer 有一個方便的licenses 命令,用於查詢許可的完整列表:

composer licenses

更多composer相關技術文章,請訪問

composer教學專欄!

以上是這些composer命令你還不會用嗎?快收藏!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!