介紹
構(gòu)建 php web 應(yīng)用程序時(shí),保持依賴(lài)項(xiàng)最新并防止安裝具有已知安全漏洞的 composer 依賴(lài)項(xiàng)非常重要。這可以幫助您確保您的應(yīng)用程序是安全的,并且您可以從最新的功能和錯(cuò)誤修復(fù)中受益。
但是,在一般日常開(kāi)發(fā)任務(wù)之間的依賴(lài)關(guān)系更新上確實(shí)很容易落后。值得慶幸的是,composer 為我們提供了一個(gè)方便的工具,您可以使用它來(lái)概述您正在使用的軟件包有可用的更新。
在這篇 quickfire 文章中,我們將快速瀏覽一下 composer outdated 命令,以幫助您找到 php 項(xiàng)目中過(guò)時(shí)的包。
“作曲家過(guò)時(shí)”命令
您可以運(yùn)行composer outdated 命令來(lái)查找您的哪些依賴(lài)項(xiàng)有可用更新。
您可以通過(guò)在 php 項(xiàng)目的根目錄中運(yùn)行以下命令來(lái)執(zhí)行命令:
composer outdated
登錄后復(fù)制
默認(rèn)情況下,該命令將顯示具有可用更新版本的軟件包以及您正在使用的當(dāng)前版本。依賴(lài)項(xiàng)分為兩個(gè)不同的類(lèi)別:
直接依賴(lài)項(xiàng) – 這些是您在composer.json 文件中所需的包。
傳遞依賴(lài)項(xiàng) – 這些是您的直接依賴(lài)項(xiàng)所需的包,但不是您直接需要的。
如果依賴(lài)項(xiàng)是次要版本或補(bǔ)丁版本,composer 將以紅色顯示新版本。如果依賴(lài)項(xiàng)的主要版本可用,新版本將以黃色顯示。
這是運(yùn)行composer outdated 命令時(shí)可能看到的輸出示例:
正如我們?cè)趫D像中看到的,composer outdated 命令已顯示具有較新版本可用的軟件包。
因此,在上面的示例中,我們可以看到我們?cè)赾omposer.json 文件中所需的 phpunit/phpunit 依賴(lài)項(xiàng)當(dāng)前為 10.5.17,并且有一個(gè)主要版本升級(jí)到 11.3.1。
我們還可以看到我們有一些傳遞依賴(lài)項(xiàng),這些依賴(lài)項(xiàng)具有可用的主要、次要和補(bǔ)丁升級(jí)。
命令選項(xiàng)
composer outdated 命令有幾個(gè)選項(xiàng)可用于過(guò)濾輸出:
– 全部
您可以使用 –all 選項(xiàng)來(lái)顯示項(xiàng)目中的所有依賴(lài)項(xiàng),包括最新的依賴(lài)項(xiàng)。如果您想在一個(gè)地方查看項(xiàng)目中的所有依賴(lài)項(xiàng)并大致了解哪些包需要更新以及哪些包正在運(yùn)行最新版本,這會(huì)很有用。
你可以像這樣使用它:
composer outdated --all
登錄后復(fù)制
輸出可能看起來(lái)像這樣:
如果版本號(hào)顯示為綠色,則表示我們當(dāng)前安裝的版本是當(dāng)前最新版本。作為示例,我們可以看到 jonpurvis/profanify 依賴(lài)項(xiàng)是最新的。
順便說(shuō)一句,我實(shí)際上有一篇文章介紹了如何在 php 項(xiàng)目中使用 profanify 來(lái)防止代碼中出現(xiàn)臟話。您可以在這里查看:profanify:防止 php 代碼庫(kù)中出現(xiàn)臟話
– 直接的
您可以使用 –direct 選項(xiàng)僅顯示項(xiàng)目中的直接依賴(lài)項(xiàng)。
如果您只想查看 composer.json 文件中直接需要的包,這會(huì)很有用。
你可以像這樣使用它:
composer outdated --direct
登錄后復(fù)制
輸出可能看起來(lái)像這樣:
–僅主要
如果您只想查看具有可用主要版本的軟件包,可以使用 –major-only 選項(xiàng)。
你可以像這樣使用它:
composer outdated --major-only
登錄后復(fù)制
–僅次要
如果您只想查看有可用次要版本的軟件包,可以使用 –minor-only 選項(xiàng)。
你可以像這樣使用它:
composer outdated --minor-only
登錄后復(fù)制
–僅補(bǔ)丁
如果您只想查看有可用補(bǔ)丁版本的軟件包,可以使用 –patch-only 選項(xiàng)。
你可以像這樣使用它:
composer outdated --patch-only
登錄后復(fù)制
結(jié)論
希望本文能讓您快速了解 composer 過(guò)時(shí)命令以及如何使用它來(lái)查找 php 項(xiàng)目中的過(guò)時(shí)包。
如果您喜歡閱讀這篇文章,您可能有興趣查看我的 220 多頁(yè)電子書(shū)“battle ready laravel”,其中更深入地涵蓋了類(lèi)似的主題。
或者,您可能想查看我的另一本 440 多頁(yè)電子書(shū)“consuming apis in laravel”,它教您如何使用 laravel 來(lái)使用來(lái)自其他服務(wù)的 api。
如果您有興趣在我每次發(fā)布新帖子時(shí)獲得更新,請(qǐng)隨時(shí)訂閱我的時(shí)事通訊。
繼續(xù)創(chuàng)造精彩的東西! ?