Composer
Last updated
Last updated
Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·Π°Π½Ρ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΡ Π² composer.json Π² ΠΏΠ°ΠΏΠΊΡ vendor, Ρ ΡΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΡΠΎΠΆΠ΅ Π΅ΡΡΡ ΡΠ²ΠΎΠΉ composer.json ΠΈ ΡΠ²ΠΎΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ·Π΅Ρ ΡΠΎΠΆΠ΅ "ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ" ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ. Π Π΄Π΅Π»Π°Π΅Ρ Π°Π²ΡΠΎΠ·Π°Π³ΡΡΠ·ΠΊΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π² ΡΠ²ΠΎΠΉΡΡΠ²Π΅ "autoload" Π² composer.json, ΠΊΠ°ΠΊ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, ΡΠ°ΠΊ ΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ΅ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΡ).
composer require vendor/package
ΠΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ Π² ΡΠ°ΠΉΠ» composer.json
ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π΅Π³ΠΎ Π² Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ.
ΠΠΎΠΌΠ°Π½Π΄Π° require
ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ composer.json
, Π½Π°Ρ
ΠΎΠ΄ΡΡΠΈΠΉΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠ°ΠΏΠΊΠ΅. ΠΡΠ»ΠΈ ΠΏΠ°ΠΊΠ΅ΡΡ ΡΡΠ΅Π±ΡΡΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, ΡΠΎ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ. Π ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½ composer.lock
.
composer install
ΠΡΠ»ΠΈ ΡΠ°ΠΉΠ»Π° composer.lock
Π½Π΅Ρ, ΡΠ΅Π·ΠΎΠ»Π²ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΈΡΡ
ΠΎΠ΄Ρ ΠΈΠ· composer.json
ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π΅Π³ΠΎ. ΠΠ°Π»Π΅Π΅, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ ΡΠ°ΠΉΠ» composer.lock
, ΡΠΊΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² Π½ΡΠΌ Π²Π΅ΡΡΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
ΠΠΏΡΠΈΡ --no-scripts
ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄Π»Ρ ΠΎΠ±Ρ
ΠΎΠ΄Π° Π·Π°ΠΏΡΡΠΊΠ° ΡΠΊΡΠΈΠΏΡΠΎΠ², ΡΠΊΠ°Π·Π°Π½Π½ΡΡ
Π² pre- ΠΈ post- Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
.
composer update
ΠΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ Π²Π°ΡΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
Π²Π΅ΡΡΠΈΠΉ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ composer.lock
.
ΠΠΎΠΌΠ°Π½Π΄Π° update
ΡΠ΅Π·ΠΎΠ»Π²ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΌΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ Π·Π°Π²ΠΈΡΡΡΠΈΡ
Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
composer update --lock
ΠΠ½ΠΎΠ³Π΄Π°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅:
ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π²ΡΡΡΠ½ΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π»ΠΈ composer.json
(Π΄ΠΎΠ±Π°Π²Π»ΡΠ»ΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΠ»ΠΈ description
, authors
, extra
ΠΈ Ρ. Π΄.). ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Π°ΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π΅Π·Π½Π°ΡΠΈΠΌΡ Π΄Π»Ρ Composer, ΠΎΠ½ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ, ΡΡΠΎ md5sum ΡΠ°ΠΉΠ»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°, ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°Π΅Ρ, ΡΡΠΎ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π½Π΅ ΡΡΡΠ΅Π½Ρ Π² ΡΠ°ΠΉΠ»Π΅ composer.lock
.
ΠΠΎΡΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π°Π²ΠΈΡΡ ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ update --lock
Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ lock-ΡΠ°ΠΉΠ»Π° Π±Π΅Π· ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΌΠΈΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
composer dump-autoload --optimize
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ, Ρ. ΠΊ. ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ dump-autoload
ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠ»ΡΡ --optimize Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ PSR-0 Π² Π°Π²ΡΠΎΠ·Π°Π³ΡΡΠ·ΠΊΡ ΠΊΠ°ΠΊ Π΄Π»Ρ classmap, ΡΡΠΎΠ±Ρ Π°Π²ΡΠΎΠ·Π°Π³ΡΡΠ·ΡΠΈΠΊ Π±ΡΠ» Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΠΌ. ΠΡΠΎ Π½Π°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π΄Π»Ρproduction (Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ 20% ΠΏΡΠΈΡΠΎΡΡ), Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°, ΡΠ°ΠΊ ΡΡΠΎ ΡΡΠΎ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π΅ ΡΠ΄Π΅Π»Π°Π½ΠΎ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
Π’Π°ΠΊΠΆΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ dumpautoload
ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ.
composer create-project vendor/package dir/
Π‘ΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
composer init
Π‘ΠΎΠ·Π΄Π°Π΅Ρ Π±Π°Π·ΠΎΠ²ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΡΠ°ΠΉΠ»Π° composer.json
Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
ΠΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Composer Π±ΡΠ΄Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ Π΄Π»Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠΎΠ»Π΅ΠΉ ΡΠΌΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
composer remove
Π£Π΄Π°Π»ΡΠ΅Ρ ΠΏΠ°ΠΊΠ΅Ρ ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΉ require ΠΈΠ»ΠΈ require-dev: remove vendor/package vendor/package2
.