composer Установка пакета из репозитория на github (vcs) -- как копировать если его нет на packagist.org - fork
Primary tabs
Сделать это нетрудно. В файл composer.json вашего проекта добавьте:
Предположим, что вы хотите установить вот этот бандл (модуль) для симфони3:
Строки типа:
"require": { "tilleuls/acl-sonata-admin-extension-bundle": "master" }, "repositories": [ { "type": "vcs", "url": "https://github.com/coopTilleuls/CoopTilleulsAclSonataAdminExtensionBundle" } ]
При этом название tilleuls/acl-sonata-admin-extension-bundle мы взяли из composer.json самого модуля (поле name).
После чего просто запустите обычное обновление средствами композера:
<pre class="brush: php">composer update
Пример из наших проектов
Аналогично: SimpleMVC-example таким же образом зависит от своего ядра SimpleMVC (и еще пары пакетов с гитхаба)
Установка из fork репозитория (пользовательская ветка)
(на примере sonata-project/admin-bundle)
И хотя на GitHub ветка отображалась как 3.x, а на getcomposer.org указано
Your custom branch name must be prefixed with "dev-",
в composer.json в нашем случае помогла запись в форме "3.x-dev" (то есть -dev как постфикс):
"require": { "sonata-project/admin-bundle": "3.x-dev", }
Возможная ошибка
Это упоминалось в сообщении об ошибке:
Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1 - The requested package sonata-project/admin-bundle dev-3.x exists as sonata-project/admin-bundle[2.0.0, 2.1.0, 2.1.1, 2.2.0, 2.2.1, 2.2.10, 2.2.11, 2.2.12, 2.2.13, 2.2.2, 2.2.3, 2.2.4, 2.2.5, 2.2.6, 2.2.7, 2.2.8, 2.2.9, 2.3.0, 2.3.1, 2.3.10, 2.3.2, 2.3.3, 2.3.4, 2.3.5, 2.3.6, 2.3.7, 2.3.8, 2.3.9, 2.x-dev, 3.0.0, 3.1.0, 3.10.0, 3.10.1, 3.10.2, 3.10.3, 3.11.0, 3.12.0, 3.13.0, 3.14.0, 3.15.0, 3.15.1, 3.16.0, 3.2.0, 3.3.0, 3.3.1, 3.3.2, 3.4.0, 3.5.0, 3.6.0, 3.7.0, 3.7.1, 3.8.0, 3.9.0, 3.x-dev, dev-master, 4.x-dev] but these are rejected by your constraint.
Ну а адрес форкнутого репозитория можно задать в секции: "repositories": [
{
"type": "vcs",
"url": "https://github.com/sinoptik/SonataAdminBundle"
}
]
Далее composer update.
Подробности:
https://getcomposer.org/doc/05-repositor...
- Log in to post comments
- 10228 reads