Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03309.jsonl.gz/2381

Composer verstehen - Teil 2 - die wichtigsten Befehle
von Marco Simbürger
Composer aktualisieren
Das wichtigste zuerst: Composer sollte man immer aktuell halten. Deshalb immer wieder mal folgenden Befehl ausführen:
$ composer self-update
Projekt erstellen
Mit Composer kann man neue Projekte aus einem bestehenden Paket erstellen. Dies ist identisch zu einem git clone, gefolgt von composer install.
Um ein neues Projekt mit Composer zu erstellen, wird der Befehl create-project verwendet. Man gibt dann das Paket und das Verzeichnis, in dem das Projekt erstellt werden soll an. Man auch eine spezifische Version als drittes Argument angeben, ansonsten wird die neueste Version verwendet.
$ composer create-project contao/managed-edition mein_projekt_ordner '4.6.*'
Paket hinzufügen (composer require)
Der Befehl require fügt der Datei composer.json das neue Paket hinzu und lädt diese, sowie alle Pakete, von der dieses Paket anhängig ist, herunter.
# Neuste Version $ composer require isotope/isotope-core # Spezifische Version $ composer require isotope/isotope-core:2.5.3 $ composer require isotope/isotope-core:^2.0 # Mehrere Pakete gleichzeitig hinzufügen $ composer require isotope/isotope-core terminal42/contao-leads
Paket aktualisieren (composer update)
Um die neuesten Versionen eines Pakets zu erhalten und die composer.lock zu aktualisieren, wird der Befehl update verwendet.
# Alle Pakete aktualisieren $ composer update # Spezifisches Paket aktualisieren $ composer update isotope/isotope-core # Mehrere Pakete aktualisieren $ composer update isotope/isotope-core terminal42/contao-leads # Alle Pakete vom gleichen Anbieter (vendor) $ composer update terminal42/* # Paket(en) und deren Abhängigkeiten aktualisieren $ composer update --with-dependencies isotope/isotope-core
Paket installieren (composer installieren)
Der Befehl install liest die Datei composer.json aus, löst die Abhängigkeiten auf und installiert diese. Wenn sich im aktuellen Verzeichnis eine composer.lock Datei befindet, verwendet Composer die genauen Versionen von dort aus. Dadurch wird sichergestellt, dass jeder die gleichen Versionen erhält. Wenn es keine composer.lock Datei gibt, erstellt Composer eine nach der Auflösung der Abhängigkeiten.
$ composer install
Paket entfernen (composer remove)
Der Befehl remove entfernt das Paket aus der composer.json Datei und löscht den Code aus dem Projekt.
# Spezifische Paket entfernen $ composer remove isotope/isotope-core # Mehrere Pakete gleichzeitig entfernen $ composer remove isotope/isotope-core terminal42/contao-leads
Paket suchen (composer search)
Mit dem Suchbefehl können Pakete in den angegebenen Repositories des aktuellen Projekts gesucht werden. Normalerweise ist dies packagist.org. Die Suche direkt dort auf dieser Seite ist ebenfalls eine bequeme Sache!
$ composer search monolog # Ausgabe monolog/monolog Sends your logs to files, sockets, inboxes, databases and various web services symfony/monolog-bundle Symfony MonologBundle symfony/monolog-bridge Symfony Monolog Bridge ...
Updates für Pakete prüfen (composer outdated)
Der outdated Befehl zeigt eine Liste der installierten Pakete, für die Updates verfügbar sind, einschliesslich ihrer aktuellen und neuen Version.
$ composer outdated
Überprüfen wieso ein Paket installiert wurde bzw. nicht installiert werden kann
Der Befehl why zeigt auf, welche anderen Pakete von einem bestimmten Paket abhängen bzw. wieso dieses Paket installiert wurde.
$ composer why monolog
Umgekehrt sagt der Befehl why-not, welches Pakete ein bestimmtes Paket daran hindern, installiert zu werden. Man kann eine Versionsbeschränkung angeben, um zu überprüfen, ob Upgrades in das Projekt durchgeführt werden können und wenn nicht, warum nicht. Man kann auch Systemanforderungen angeben, um zum Beispiel zu prüfen, ob man Anpassungen an der Serverumgebung machen kann (zum Beispiel ob man die PHP Version erhöhen kann).
$ composer why-not monolog $ composer why-not php:8
composer.lock aktualisieren
Um nur die composer.lock Datei zu aktualisieren, kann man eine der folgenden beiden Befehle verwenden.
$ composer update --lock $ composer update nothing
Weiter zu Teil 3: Composer verstehen - Teil 3 - composer.json