Вызовы `composer install` должны использовать только zip-файлы satis dist, а не исходный код.

Мы используем репозиторий satis для размещения зависимостей zip-файлов. Массив репозитория нашего файла composer.json указывает на репозиторий satis и отключает packagist. Но когда мы запускаем обновление композитора, composer.lock по-прежнему перечисляет исходный источник в разделе «источник» (тот, который указан в satis.json в репозиториях). Satis указан в разделе «dist». Это проблема, потому что вызов composer install загрузит исходный код.

Как сделать так, чтобы вызовы composer install загружали только zip-файл satis dist и ничего больше?


person mattalxndr    schedule 01.08.2014    source источник


Ответы (2)


У нас была точно такая же проблема, как вы описываете. Нам удалось заставить нас работать, удалив "skip-dev": true (у нас это было при устранении неполадок) и запустив composer update с опцией --prefer-dist.

Не знаю точно, как все это устроено, совершенно новое для сатис и все еще изучающее композитора. Надеюсь, это поможет кому-то в той же лодке.

person nickspiel    schedule 18.11.2015

Если у вас есть старый файл composer.lock, который был создан до настройки Satis и отключения доступа к Packagist, это нормально.

И просто попытка обновить существующую установку, загруженную неправильным образом, также будет продолжаться. Если вы хотите начать все заново, удалите папку composer.lock и папку vendor и запустите composer update. Для большей уверенности composer update --prefer-dist.

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

Другое дело, как вы настроили свой экземпляр Satis. Я использую один в течение года или около того, который использует двухэтапный процесс для захвата как внешних, так и локальных репозиториев, и он отлично работает. Может быть, вы можете добавить некоторые подробности по этому поводу.

person Sven    schedule 01.08.2014
comment
Не могли бы вы рассказать об этом подробнее ?: Я использую один в течение года или около того, который использует двухэтапный процесс для захвата как внешних, так и локальных репозиториев, и он отлично работает. - person mattalxndr; 03.10.2014