Composer to popularne narzędzie służące do zarządzania zależnościami w naszym projekcie. Działa on w oparciu o serwis Packagist, z którego pobierane są zależności (istnieje możliwość korzystania z paczek z innego źródła, ale nie będę się teraz na tym skupiał). Najczęściej wykorzystywaną przez programistów komendą jest composer require i composer update. Jak się niedługo przekonacie, composer potrafi znacznie więcej niż wspomniane dwie komendy.

Global

Zacznijmy od polecenia global. Domyślnie composer instaluje paczki lokalnie, w konkretnym projekcie, nad którym pracujemy. Jeśli chcemy zainstalować jakąś paczkę (np. Behat) globalnie, powinniśmy użyć w tym celu polecenia global.

composer global require behat/behat

Jak widać na powyższym przykładzie, komendę global wstawiamy przed właściwym poleceniem, które chcemy wykonać.

Show

Kolejnym wartym zapamiętania poleceniem jest show. Aliasem do tej komendy jest info. Show wyświetla informacje o zainstalowanych pakietach – lokalnych oraz globalnych (w połączeniu z poleceniem global).

Polecenie show powinno zostać wywołane z nazwą pakietu, który nas interesuje.

composer show behat/behat

W wyniku otrzymamy dokładne informacje na temat wybranego pakietu: nazwę i opis, listę dostępnych wersji, adres repozytorium oraz zależności. Jednak na tym nie kończą się możliwości polecenia show. Przy pomocy parametrów możemy uzyskać znacznie więcej informacji. Najciekawsze dwa parametry to -i oraz -s. Pierwszy z nich listuje wszystkie zainstalowane lokalnie projekty.

composer show -i

Drugi wyświetla informacje zawarte w pliku composer.json.

composer show -s

Po dodaniu komendy global uzyskamy ten sam efekt, ale dla pakietów zainstalowanych globalnie.

composer global show -i
composer global show -s

Run-script

Jedną z bardziej przydatnych funkcji composera, jest możliwość wywoływania skryptów w odpowiedzi na wystąpienie określonego zdarzenia związanego z composerem. Komenda run-script pozwala ręcznie wywołać zdefiniowany wcześniej zestaw skryptów.

composer run-script pre-update-cmd

Remove

Ostatnią ciekawą komendą w tym zestawieniu jest komenda remove. Działa ona odwrotnie do require – usuwa zainstalowaną wcześniej paczkę.

composer remove behat/behat

W przypadku globalnie zainstalowanych paczek, wystarczy dodać polecenie global.

Podsumowanie

Wymienione powyżej komendy to tylko niewielki fragment możliwości jakie oferuje composer. Warto zapoznać z pozostałymi poleceniami, ponieważ dzięki nim praca nad projektem będzie czystą przyjemnością,