Пакетный менеджер composer.
Всем привет. Сегодня мы поговорим о том, что такое пакетные менеджеры, и рассмотрим один из них - composer.
Для начала разберемся, для чего нужны пакетные менеджеры? Пакетные менеджеры помогают через консоль буквально в паре строк скачать все пакеты, зависимости, какие-то фреймворки, плагины, используемые языком программирования. В нашем случае composer - это пакетный менеджер для языка программирования php.
Чтобы показать вам, как работает composer, давайте скачаем фреймворк yii
Итак, зайдите на сайт http://getcomposer.org/ и нажмите кнопку "Getting Started". Теперь нажмите Installation - *nix, чтобы установить его на Mac или Linux. Откройте терминал и вставьте следующие команды:
1) $ curl -sS https://getcomposer.org/installer | php
2) $ mv composer.phar /usr/local/bin/composer
После того, как вы все сделали, введите команду composer и, если у вас появилась большая надпись "COMPOSER" и некоторая информация, то вы все сделали правильно и composer успешно установился.
Чтобы установить composer на Windows, перейдите по ссылке https://getcomposer.org/doc/00-intro.md#installation-windows и скачайте инсталятор. Если во время установки у вас будут выскакивать ошибки библиотек, то просто зайдите в файл php.ini и отключите те библиотеки, которые не дают установится пакетному менеджеру composer.
После того, как composer установлен, перейдите на рабочий стол и создайте папку с названием "composer". Теперь в консоли перейдите в нее
cd Desktop/composer/
Чтобы инициализировать composer, введите команду
composer init
В чем вообще суть? Суть в том, что когда вы начинаете новый проект, вам не нужно лазить по сайтам и качать все, что для него нужно. Вы просто вводите команду в консоли, и все автоматически скачивается. Еще один плюс в том, что некоторые библиотеки зависят от других библиотек, но вам об этом уже заботиться не нужно, т.к. composer скачает и их. В больших проектах это очень удобно в том плане, что если прийдет, например, новый сотрудник, то вам не нужно объяснять ему, что скачивать и откуда. Вы просто дадите ему json файл, он введет команду в консоли, и все установится.
Продолжим устанавливать наш фреймворк. Как я уже сказал, вводим
composer init
Дальше все можете пропустить, нажимая enter до тех пор, пока не увидите надпись
Search for a package:
Введите тут название нашего фреймворка
Search for a package: yii
Вы увидите перед собой все совпадения, которые нашел composer. Наш нужно yiisoft/yii Слева в квадратных скобках стоит номер. В моем случае это 0, я ввожу его и нажимаю enter. Дальше нам нужно ввести версию. А откуда вообще composer все это качает? Есть такой сайт, где хранится много всякой всячины - http://packagist.org/ Там введите в строке поиска yii и перейдите по первой ссылке, там вы увидите, что версия называется dev-master. Введите это в консоль и нажмите enter.
dev-master
Дальше жмите enter, пока не увидите надпись
Do you confine generation[yes]?
Выше этой надписи вы можете видеть, как выглядит файл composer.json. Это как раз таки тот файл, который вы дадите новому сотруднику.
Итак, нас все устраивает, нажимаем enter.
Теперь, если вы зайдете в нашу папку на рабочем столе composer, то увидите, что там появился наш json файл.
Теперь введите в консоль команду
composer install
После того, как установка будет закончена, в нашей папке на рабочем столе появится новая папка с именем vendor, где хранятся все файлы нашего фреймворка.
Вот так легко работать с пакетным менеджером composer, а главное, что теперь вам не придется скачивать все вручную. Достаточно один раз сделать json файл и затем просто использовать его для скачки и установки нужных вам фреймворком, плагинов, библиотек и прочего.
-
- Михаил Русаков
Комментарии (1):
Благодарю за статью, попробовал в openServer? вот что выловил: s:\DEVELOPER\openserver\OpenServer\domains\vmp>composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic s:\DEVELOPER\openserver\OpenServer\domains\vmp\ Warning: This development build of composer is over 30 days old. It is recommended to update it by running "s:\developer\openserver\openserver\modules\php\PHP-5.6\composer.phar self-update" to get the latest version. [Composer\Downloader\TransportException] The "https://packagist.org/packages.json" file could not be downloaded: failed to open stream: ??????? ??? ??????? ?????????? ???? ???????????, ?.?. ?? ??????? ?????????? ?? ????????? ????? ?? ??????? ?????? ????? ?, ??? ???? ????????? ??? ????????????? ?????????? ??-?? ????????? ??????? ??? ????????????? ??????????. create-project [-s|--stability="..."] [--prefer-source] [--prefer-dist] [--repository-url="..."] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--no-scripts] [--no-progress] [--keep-vcs] [--no-install] [package] [directory] [version]
Ответить
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.