Composer global installieren und auf Stand halten

Der de facto Standard Dependency Manager for PHP ist Composer. Mit Composer kann man sich bequem u. a. (Open Source) Bibliotheken, Komponenten laden und braucht sich um Abhängigkeiten kaum noch Gedanken zu machen. Zudem liefert Composer einen Autoloader.


 

Composer global für alle User installieren

Composer global installieren (bedingt installiertes PHP):


 

Komponenten global für einen User installieren

Für die Entwicklung machen sich Programme wie phpDocumenter, PHP_CodeSniffer und natürlich vor allem PHPUnit sehr nützlich. Diese können bequem global (pro User) installiert werden und sind dann für alle Projekte des Linux Users verfügbar.

Standardpakete global für die einzelnen User installieren:

Eventuell noch den Fehler „Unable to find the dot command of the GraphViz package. Is GraphViz correctly installed and present in your path?“ beheben, wenn phpDocumenter (phpdoc) genutzt wird:


 

Composer nutzen / Pakete pro Projekt installieren

Grob zusammengefasst geht man so vor:

  1. Ins Projekthauptverzeichnis wechseln
  2. Mit composer init Composer einmalig für das Projekt initialisieren
  3. Mit composer search <query> Pakete suchen
  4. Mit composer require package Pakete installieren
  5. Mit composer show die installierten Pakete einsehen
  6. Mit composer update die installieren Pakete aktualisieren

Alternativ zur Suche der Pakete über die Konsole kann man auch Packagist nutzen („Package Repository“ für Composer).

In dem konkreten Beispiel (Bootstrap & Font-Awesome installieren und nutzen) sieht das dann so aus:

Viel mehr muss man auch schon nicht machen. In der Regel beschränkt sich das Ganze (bei mir) auf die wenigen genannten Befehle oben.


 

Composer Pakete pro Projekt aktuell halten

Nun sind die Pakete zwar installiert, jedoch müsste man regelmäßig manuell mittels composer update --dry-run prüfen, ob es für die einzelnen installierten Pakete Updates gibt.

Einfacher geht es mit diesem kleinen Einzeiler, den man einfach als täglichen oder wöchentlichen Cronjob einrichten kann (in diesem Beispiel wird der Job immer sonntags um 8:45 Uhr ausgeführt):

Nun gibt es einmal pro Woche automatisch eine schlichte Email mit den Paketen zu denen es ein Update gibt. Wenn es keine neuen Updates gibt, dann wird auch keine Email verschickt.

Wichtig: Bitte darauf achten <user> gegen den aktuellen User des Projekts auszutauschen genau wie </path/to/project>.


 

Composer selbst aktuell halten

Um Composer selbst zu aktualisieren, geht man wie folgt vor:


 

Weitere nützliche Composer Befehle

Details zu einem Paket (auch wenn nicht installiert) anzeigen:

 

Alle installierten Pakete anzeigen:

Das könnte dich auch interessieren...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.