2016-03-01 2 views
0

Кто-нибудь знает, как composer install для всех подпапок тоже? Поддерживает ли композитор это? Теперь мне нужно выполнить эту команду в каждой подпапке или добавить папку vendor вложенной папки в git.Установка композитора для подпапок

Я нашел решение в Linux: https://www.bram.us/2014/02/16/installing-dependencies-in-all-subfolder-organised-projects/

Но как сделать то же самое в Windows?

Пример.

У меня есть проект в C:\grav с composer.json в нем. Но и у меня есть папка плагинов C:\grav\user\plugins с composer.json в некоторых подкаталогов:

enter image description here

Я хочу, чтобы выполнить composer install в C:\grav установить все зависимости в каждом C:\grav\user\plugins\* тоже.

+0

Когда вы запускаете 'comper install' или' composer require', он сканирует ваши зависимости и устанавливает их все в 'vendor', нет необходимости запускать' comper install' в каждом каталоге. – Michael

+0

Если вам нужно запустить скрипт (любой скрипт) в подпапке, вы можете использовать [script hook-manual] для композитора (https://getcomposer.org/doc/articles/scripts.md) – Michael

+0

@Michael I Я имею «композитора».json' в корне и в каждой подпапке. – Sogl

ответ

2

Grav плагин или тема

Для того, чтобы поддержать правильные папки установки для GRAV плагинов и тем, вам нужно будет добавить composer/installers к require части ваших плагинов.

Обычно плагины приземлится в папку поставщика, тоже - но, то Grav Установщик говорит композитор правильное положение внутри проекта Grav см см https://github.com/composer/installers/blob/master/src/Composer/Installers/GravInstaller.php#L6

Таким образом, при написании плагинов или темы для GRAV каждый composer.json должен указать type как grav-plugin или grav-theme, иначе композитор не может соответствовать пакету установщику.

{ 
    "name": "your/some-grav-plugin", 
    "type": "grav-plugin", 
    "require": { 
     "composer/installers": "^1.0.23" 
    } 
} 

Grav главный проект

Теперь в вашем главный дериватографической принадлежности проект composer.json, просто добавить плагин.

Затем запустить composer install. Это означает, что пакет извлекается, инсталлятор композитора забирается, на основе пакета типа установка соответствия запускается и установщик дериватографическими падает файл в нужную папку ....


Но как сделать то же самое в Windows?

Uhm ... Композитор работает кросс-платформенный. Не проблема.

+0

Так что мне нужно добавить 'type: grav-plugin' и' composer/installers' ко всему модулю 'composer.json' моего плагина? Также вы можете добавить пример основного проекта 'composer.json'? Спасибо! – Sogl

+0

Да, когда вы добавляете 'type' и' composer/installers', тогда все плагины и темы Grave будут автоматически идентифицированы и установлены в правильных папках. | Добавление примера для основного 'composer.json'? Существует не так много, чтобы показать .. вы в основном добавить плагины в раздел необходимости. Вот и все. –