Sie müssen diese Composer-Befehle kennen! Unten verwendet composer die Tutorial-Spalte, um Ihnen häufig verwendete Composer-Befehle vorzustellen. Ich hoffe, dass es Freunden, die es benötigen, hilfreich sein wird!
Composer ist ein Abhängigkeitsmanagement-Tool für PHP. Wenn Sie ein PHP-Entwickler sind, verwenden Sie es wahrscheinlich jeden Tag und führen die erforderlichen Befehle häufig aus. Falls Sie es noch nicht bemerkt haben: Wir können einige andere Composer-Befehle verwenden, um die Verwendung zu vereinfachen.
Es gibt viele Befehle, die Sie verwenden können, aber heute werde ich 6 Befehle vorstellen, die ich verwende und die mir jeden Tag helfen.
show
Lass uns zuerst über den Show-Befehl sprechen. Es ermöglicht Ihnen, alle installierten Pakete für Ihr Projekt (einschließlich Abhängigkeiten) anzuzeigen und Beschreibungen verwandter Pakete anzuzeigen. Alle diese Informationen finden Sie in der Composer-Sperrdatei (composer.lock), aber die Verwendung des Befehls show ist eine relativ einfachere und bequemere Möglichkeit, Paketinformationen anzuzeigen.
Um alle installierten Pakete mit ihren Versionsnummern und Beschreibungen aufzulisten, verwenden Sie einfach show:
composer 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 -t
outdated
在使用 composer update 命令前,你也许想检测一下已安装的包,哪些有可以升级的。这可以使用 outdated 命令。
composer outdated
此命令是 composer show -lo 的别名之一。
根据语义化的版本,返回着色的代码,来标明每个包的状态:
Green: 当前安装包已是最新版本
Yellow: 有可升级的更新, 但可能有不兼容的修改。
Red: 有可用的小版本升级 (一般是bug修复)
Nach dem Login kopieren
如果希望高亮显示小的升级版本, 可以使用 outdated 命令,以--minor-only 或者 -m 参数 :
composer outdated -m
状态
我发现自己经常会使用 install 、update 命令的参数 --prefer-source 来处理源代码安装的依赖项。然后,如果我修改了任何这些依赖项,我需要一种快速检查哪些包已被修改的方法。status 命令提供了一种方便的方法。
您可以使用 --verbose 或 -v 参数来查看本地修改的软件包和文件:
composer status -v
我发现使用 verbose 标记是使用此命令最有用的方法。
许可
最后,知道您安装的每个软件包的许可证是非常有用的。Composer 有一个方便的 licenses 命令,用于查询许可的完整列表:
composer licenses
Manchmal ist es einfacher, diese Informationen in Form eines Abhängigkeitsbaums anzuzeigen. Verstehen Sie, Sie können übergeben der Parameter --tree oder -t:composer show -t
Wenn Sie die zurückgegebenen Pakete filtern möchten, können Sie Platzhalter verwenden, um einen zusätzlichen String-Parameter*:
zu übergeben Composer Show 'symfony/*'
🎜Dadurch werden alle installierten Symfony-Pakete zurückgegeben. Achten Sie hier auf die Anführungszeichen. Wenn Sie die Bash-Shell verwenden, müssen Sie diese Anführungszeichen nicht hinzufügen. Wenn Sie jedoch zsh verwenden und die Anführungszeichen nicht benötigen, wird die Fehlermeldung „Keine Übereinstimmungen gefunden“ angezeigt gemeldet. 🎜🎜Wenn Sie Informationen zu einem bestimmten Paket sehen möchten, benötigen Sie den vollständigen Paketnamen: 🎜🎜
composer show laravel/framework
🎜🎜Hier werden Ihnen die installierte Version, ihre Lizenz und Abhängigkeiten angezeigt Informationen wie der Standort der lokalen Installation. 🎜🎜🎜why🎜🎜🎜Wenn Sie wissen möchten, warum ein bestimmtes Paket installiert ist, können Sie mit dem Why-Befehl ermitteln, welche Abhängigkeiten es erfordern: 🎜🎜
composer why vlucas/phpdotenv
🎜🎜why why hängt vom Alias für den Befehl ab, aber ich persönlich finde es einfacher, mich daran zu erinnern, „warum“ zu verwenden. Sie können diese Informationen im Abhängigkeitsbaum mit dem Flag --tree oder -t anzeigen: 🎜🎜
composer why vlucas/phpdotenv -t
🎜🎜why-not🎜🎜🎜Manchmal werden einer oder mehrere installiert Das Paket verhindert, dass das Paket installiert oder aktualisiert wird. Um zu überprüfen, welche Pakete installiert sind, können wir den Befehl why-not (Alias prohibits) verwenden. Beispielsweise können wir mit dem Befehl „why-not“ nach Paketen suchen, die uns daran hindern, das Paket „laravel/framework“ zu aktualisieren: 🎜🎜
composer why-not laravel/framework 5.8
🎜Ähnlich können wir das Flag --tree oder -t verwenden, um diese Informationen im Abhängigkeitsbaum anzuzeigen: 🎜🎜
composer why-not laravel/framework 5.8 -t
🎜outdated🎜🎜Vielleicht möchten Sie das Überprüfen Sie dies, bevor Sie den Composer-Update-Befehl verwenden. Sehen Sie sich die installierten Pakete an, um zu sehen, welche aktualisiert werden können. Dies kann mit dem veralteten Befehl erfolgen. 🎜🎜Composer veraltet🎜Dieser Befehl ist einer der Aliase von Composer Show -lo. 🎜🎜Farbcodes zurückgeben, um den Status jedes Pakets entsprechend der semantischen Version anzuzeigen: 🎜rrreee🎜Wenn Sie kleinere Upgrades hervorheben möchten, können Sie den veralteten Befehl mit dem Parameter --minor-only oder -m verwenden: 🎜🎜composer outdated -m🎜🎜Status🎜🎜Ich stelle fest, dass ich häufig den Parameter --prefer-source der Installations- und Aktualisierungsbefehle verwende, um die Abhängigkeiten der Quellcodeinstallation zu handhaben. Wenn ich dann eine dieser Abhängigkeiten ändere, benötige ich eine Möglichkeit, schnell zu überprüfen, welche Pakete geändert wurden. Der Statusbefehl bietet eine praktische Methode. 🎜🎜Sie können die Parameter --verbose oder -v verwenden, um lokal geänderte Pakete und Dateien anzuzeigen: 🎜🎜
composer status -v
🎜🎜Ich finde, dass die Verwendung des Verbose-Flags am nützlichsten ist diesen Befehl. 🎜🎜Lizenzierung🎜🎜Schließlich ist es sehr nützlich, die Lizenz jedes Pakets zu kennen, das Sie installieren. Composer verfügt über einen praktischen Lizenzbefehl zum Abfragen der vollständigen Liste der Lizenzen: 🎜🎜
composer licenses
🎜🎜Weitere technische Artikel zum Thema Composer finden Sie in der Spalte 🎜🎜Composer-Tutorial🎜🎜! 🎜🎜
Das obige ist der detaillierte Inhalt vonWissen Sie nicht, wie Sie diese Composer-Befehle verwenden? Schnell sammeln!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!