Początkujący użytkownicy Composer’a, zapewne drapią się po głowie i zastanawiają się co oznaczają symbole przed numerem wersji danego repo?
Ale zaraz zaraz, pomału. Najpierw jeszcze wspomnę co to jest ten cały Composer i za co go szanujemy!
Composer jest menedżerem pakietów dla języka PHP, który umożliwia łatwe zarządzanie zależnościami w projektach PHP. Pozwala na instalowanie i aktualizowanie bibliotek PHP oraz innych narzędzi, takich jak frameworki, wtyczki czy biblioteki zewnętrzne, które są wymagane przez projekt.
Dzięki Composerowi możesz łatwo zarządzać zależnościami Twojego projektu i kontrolować wersje używanych bibliotek. Composer zapewnia także automatyczne ładowanie klas, dzięki czemu nie musisz już ręcznie wymieniać ścieżek do plików z kodem!
Używanie Composer’a pozwala na zwiększenie produktywności i ułatwienie pracy nad projektem, a także ułatwia współpracę z innymi programistami, którzy będą pracować nad tym samym projektem.
OKEY wszystko fajnie ale jak go używać?
musisz najpierw zainstalować go na swoim komputerze. Najprostszy sposób na to jest pobranie pliku instalacyjnego z oficjalnej strony internetowej (https://getcomposer.org/) i wykonanie instrukcji instalacji zgodnie z dokumentacją.
Po zainstalowaniu Composera, możesz przejść do konfiguracji projektu. W katalogu Twojego projektu musisz utworzyć plik composer.json, w którym zdefiniujesz zależności Twojego projektu.
Plik composer.json to plik konfiguracyjny Composera, który definiuje zależności Twojego projektu oraz informacje o Twoim projekcie, takie jak wersja, autor, opis itp. Plik ten jest zapisany w formacie JSON (JavaScript Object Notation) i jest łatwy do edycji.
Poniżej przedstawiam przykładowy plik composer.json:
{ "name": "przykladowy-projekt", "description": "Opis Twojego projektu", "type": "project", "require": { "monolog/monolog": "^2.0", "symfony/console": "^5.0" }, "authors": [ { "name": "Jan Kowalski", "email": "[email protected]" } ], "license": "MIT" }
Wyjaśnienie poszczególnych elementów:
"name"
– nazwa Twojego projektu."description"
– opis Twojego projektu."type"
– typ Twojego projektu, np. „library” lub „project”."require"
– lista zależności Twojego projektu. W tym przypadku, projekt korzysta z bibliotek Monolog i Symfony Console, w wersjach 2.0 lub nowszych."authors"
– lista autorów Twojego projektu."license"
– typ licencji Twojego projektu.
Plik composer.json może zawierać również inne sekcje, takie jak "autoload"
, która umożliwia ładowanie klas automatycznie, lub "scripts"
, które umożliwiają wykonywanie różnych poleceń podczas różnych etapów życia Twojego projektu.
Aby zainstalować zależności zdefiniowane w pliku composer.json, wykonaj polecenie
composer install
Jeśli chcesz zaktualizować biblioteki w Twoim projekcie do najnowszych wersji, wykonaj polecenie:
composer update
Composera można także używać do tworzenia nowych projektów i generowania automatycznych szablonów kodu dla różnych frameworków i bibliotek.
W dokumentacji Composera znajdziesz więcej informacji na temat jego funkcjonalności i sposobów korzystania z tego narzędzia.
Rzuć okiem jakie wartości może przyjmować Composer oraz do czego służą znaki specjalne ~, *, ^:
"Require": { "Vendor/Package": "1.3.2", //exactly 1.3.2 // >, <,>=, <= | specify upper / lower bounds |="" specify="" upper="" lower=""></= | specify upper / lower bounds></,> "Vendor/Package": "> = 1.3.2",//anything above or equal to 1.3.2 "Vendor/package": "<1.3.2", // anything below 1.3.2 anything="" below=""></1.3.2", // anything below 1.3.2> // * | Wildcard "Vendor/Package": "1.3. *",//> = 1.3.0<1.4.0></1.4.0> // ~ | Allows last digit specified to go up "Vendor/Package": "~ 1.3.2",//> = 1.3.2<1.4.0></1.4.0> "Vendor/Package": "~ 1.3",//> = 1.3.0<2.0.0></2.0.0> // ^ | Doesn't allow breaking changes (major version fixed-following semver) "Vendor/Package": "^ 1.3.2",//> = 1.3.2<2.0.0></2.0.0> "Vendor/Package": "^ 0.3.2",//> = 0.3.2<0.4.0 // except if major version is 0 except="" if="" major="" version="" is=""></0.4.0 // except if major version is 0> }
Nikt jeszcze nie komentował. Bądź pierwszy!