Summery
Я пытаюсь установить пакет из частного репозитория в определенную ветку (на github). До этого пакет мог быть установлен из другой ветки. Это не было проблемой. Но теперь, что бы я ни делал, выдается следующая ошибка:
The requested package vendor/repo dev-new_mybranch exists as vendor/repo[1.0.0, dev-mybranch] but these are rejected by your constraint
Следующие вещи работают нормально:
- У меня есть репозиторий для моего собственного модуля (поставщик / репо)
- Там у меня есть некая ветвь с именем
mybranch
- Я могу включить эту новую ветку в мой composer.json с
"require": {
"vendor/repo": "dev-mybranch"
...
},
Это прекрасно работает.
Следующие вещи НЕ РАБОТАЮТ:
- Тогда у меня есть новая ветка в хранилище моих модулей:
new_mybranch
- Я хочу включить эту ветку вместо старой, поэтому в моем composer.json я использую следующее:
"require": {
"vendor/repo": "dev-new_mybranch"
...
},
- После запуска
composer update
я получаю следующую ошибку:
The requested package vendor/repo dev-new_mybranch exists as vendor/repo[1.0.0, dev-mybranch] but these are rejected by your constraint
Что я уже пытался решить эту ошибку
- Очистить кэш композитора:
composer clearcache
composer update -v
тоже не сработает. В ошибке нет больше информации, чем текст.
- Я попробовал псевдонимы веток, но это тоже не сработало.
- Существует еще один способ требовать ветвления: вместо
"dev-new_mybranch"
можно использовать "new_mybranch.x-dev"
. По-видимому, это следует использовать, если имя ветви также можно интерпретировать как имя версии. Но и этот способ не сработает.
- Я пытался запустить целый новый проект (без git и без вендор-папки до сих пор, так как это было рекомендовано в другом потоке). Затем я использовал
composer install
, но в результате все равно получаю ту же ошибку.