Сам композитор управляется композитором? - PullRequest
0 голосов
/ 03 мая 2018

Может быть, просто глупый вопрос. После того, как я скачал / клонировал исходный код композитора с github.com, как я могу запустить его или скомпилировать в файл phar?

При запуске «php bin / composer -v» отображаются такие ошибки:

php bin/composer -v
You must set up the project dependencies using `composer install`
See https://getcomposer.org/download/ for instructions on installing Composer

Сказано, что я должен скачать другой файл composer.phar и сначала запустить php composer.phar install?

Я думаю, что это рекурсивный способ, самим «композитором» управляет композитор: (

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

Задача Composer - найти и установить зависимости для конкретного проекта. Все, что он может сделать, можно сделать вручную, в основном, просто разместив файлы в нужном месте и ссылаясь на ряд автозагрузчиков.

Чтобы построить Composer с нуля, вам нужен определенный код, который находится за пределами основного репозитория Composer, например, помощники командной строки и ведения журналов. Вы можете загрузить все это вручную, но естественным способом является использование существующей установки Composer для их извлечения.

Это необходимо только в том случае, если вы работаете с самим Composer, поскольку после успешной сборки вы можете создать файл PHAR, который содержит весь необходимый код, включая сторонние зависимости. Это файлы, распространяемые как официальные релизы, и все, что нужно большинству людей; инструмент даже имеет команду self-update, которая загружает новый файл PHAR и перезаписывает тот, который вы запустили.

Этот вид начальной загрузки - использование существующей сборки инструмента как части собственного процесса сборки - на самом деле довольно распространен. Есть некоторые части самого PHP, которые генерируются с использованием PHP-скрипта, и я считаю, что первый полнофункциональный компилятор C ++ был написан на C ++.

0 голосов
/ 03 мая 2018

Сначала: если кто-то хочет просто использовать composer, он не должен устанавливать его с GitHub, просто следуйте инструкциям по установке: https://getcomposer.org/download/

ОК, вернемся к вопросу.

"composer" сам управляется composer

Да, и почему вы думаете, что это плохо?

См. официальную документацию для авторов . Это поощряет именно так:

  1. Пробег git clone https://github.com/composer/composer.git
  2. Загрузите исполняемый файл composer.phar
  3. Запустите Composer, чтобы получить зависимости: cd composer && php ../composer.phar install

Тогда вы можете использовать composer, запустив bin/composer, или вы можете скомпилировать его в phar с помощью bin/compile.

Если вам интересно, как на самом деле создаются двоичные файлы композитора, вы можете увидеть это в их Travis config . Они просто берут предыдущий выпуск композитора, предоставленный Трэвисом, и создают новый выпуск композитора с ним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...