Junior
Aký je rozdiel medzi súbormi composer.json a composer.lock?
sobes.tech AI
Odpoveď od AI
composer.json obsahuje závislosti projektu (balíčky a ich verzie), explicitne stanovené (napríklad >=1.0 <2.0).
composer.lock je generovaný súbor, ktorý fixuje presné verzie všetkých nainštalovaných závislostí spolu s ich podzávislosťami.
Rozdiely:
- Obsah:
composer.json— požiadavky na závislosti,composer.lock— presné verzie nainštalovaných závislostí. - Autori:
composer.json— vývojár,composer.lock— Composer (generované príkazomcomposer installalebocomposer update). - Účel:
composer.json— definovať závislosti,composer.lock— zabezpečiť opakovateľnosť buildov v rôznych prostrediach. - V systémoch správy verzií: Zvyčajne sú oba súbory pridané (
git add) a potvrdené (git commit).
Pri inštalácii závislostí, Composer najskôr skontroluje composer.lock. Ak existuje, nainštaluje presné verzie z neho. Ak nie alebo sa vykonáva composer update, závislosti sa vyberajú a inštalujú podľa composer.json, a potom sa composer.lock aktualizuje.