TL;DR
Instalace konkrétní verze balíčku pomocí nástroje Composer:
composer require vendor/package:version
Jak nainstalovat určitou verzi balíčku PHP pomocí nástroje Composer
Při práci na projektech PHP se může stát, že budete potřebovat nainstalovat určitou verzi balíčku, abyste zachovali kompatibilitu se stávající kódovou základnou nebo aby odpovídal produkčnímu prostředí. Composer vám to usnadní pomocí omezení verzí.
Tato příručka zahrnuje všechny správné a spolehlivé způsoby nainstalovat konkrétní verzi balíčku pomocí nástroje Composer.
Základní syntaxe
Nejpřímější způsob instalace konkrétní verze balíčku je:
composer require vendor/package:version
Nahradit:
vendor/packagese skutečným názvem balíčku (například,laravel/framework)versions číslem verze, kterou chcete nainstalovat.
Příklad:
composer require monolog/monolog:2.9.1
Tím se nainstaluje přesně tato verze 2.9.1 Monologu.
Composer aktualizuje vaše composer.json soubor jako je tento:
"require": { "monolog/monolog": "2.9.1"}
a automaticky aktualizovat composer.lock a nainstalujte balíček.
Instalace omezení verze
Composer také umožňuje flexibilní omezení verzí namísto jedné pevné verze. To je užitečné, pokud chcete zůstat v rámci major nebo minor verze.
Běžné příklady:
| Omezení | Význam | Příklad |
|---|---|---|
1.5.* |
Jakákoli verze začínající na 1.5 |
composer require guzzlehttp/guzzle:1.5.* |
^1.5 |
Jakákoli verze >=1.5.0 ale <2.0.0 |
composer require guzzlehttp/guzzle:^1.5 |
~1.5 |
Jakákoli verze >=1.5.0 ale <2.0.0, což umožňuje drobné aktualizace |
composer require guzzlehttp/guzzle:~1.5 |
>=1.5 |
Verze 1.5 nebo vyšší |
composer require guzzlehttp/guzzle:>=1.5 |
1.5 - 2.0 |
Jakákoli verze mezi 1.5 a 2.0 inkluzivní |
composer require guzzlehttp/guzzle:"1.5 - 2.0" |
Instalace bez aktualizace ostatních balíčků
Ve výchozím nastavení, composer require může vyvolat aktualizace závislostí.
Pokud chcete nainstalovat konkrétní verzi bez aktualizace jiných balíčků, použijte --no-update vlajka:
composer require monolog/monolog:2.9.1 --no-update
Tím se přidává požadavek na composer.json ale zatím nic neinstaluje ani neaktualizuje.
Poté můžete spustit:
composer update monolog/monolog
nainstalovat pouze tento balíček podle vašeho omezení verze.
Úpravy composer.json Ručně
Jiným přístupem je ruční zadání omezení verze v položce composer.json, pak spusťte composer update:
"require": { "monolog/monolog": "^2.8"}
Poté nainstalujte:
composer update monolog/monolog
Kontrola dostupných verzí
Pokud si nejste jisti, které verze jsou pro daný balíček k dispozici, spusťte:
composer show vendor/package --all
Příklad:
composer show monolog/monolog --all
Zobrazí se všechny dostupné verze, data vydání a závislosti, což vám pomůže vybrat správnou verzi ještě před instalací.
Snížení úrovně balíčku
Chcete-li provést downgrade, jednoduše si vyžádejte starší verzi:
composer require monolog/monolog:2.4.0
Composer vyřeší závislosti a upraví vaše composer.lock soubor odpovídajícím způsobem.
Pokud je již nainstalována novější verze, Composer ji automaticky downgraduje.
Globální instalace určité verze
Instalace konkrétní verze globálního balíčku Composer (např. nástroje CLI):
composer global require laravel/installer:^5.3
Můžete si to ověřit spuštěním:
composer global show laravel/installer
Ověření nainstalované verze
Chcete-li ověřit nainstalovanou verzi některého balíčku, spusťte:
composer show vendor/package
Příklad:
composer show monolog/monolog
Výstup obsahuje přesnou nainstalovanou verzi a metadata.
Souhrn
Zde je stručný odkaz na instalaci konkrétních verzí:
| Úkol | Příkaz |
|---|---|
| Nainstalovat přesnou verzi | composer require vendor/package:1.2.3 |
| Instalace omezení verze | composer require vendor/package:^1.2 |
| Vyhnout se aktualizaci dalších závislostí | composer require vendor/package:1.2.3 --no-update |
| Globální instalace | composer global require vendor/package:^1.2 |
| Zkontrolujte dostupné verze | composer show vendor/package --all |
Závěr
Instalace konkrétní verze balíčku PHP pomocí nástroje Composer je jednoduchá, ale je nezbytná pro zachování stability a kompatibility v různých prostředích. Ať už chcete uzamknout přesnou verzi, nebo definovat flexibilní omezení, nástroj Composer vám poskytuje plnou kontrolu nad správou závislostí, a to efektivně, předvídatelně a přesně.