как я могу установить пакет в composer без зависимостей

StackOverflow https://stackoverflow.com//questions/22012397

  •  21-12-2019
  •  | 
  •  

Вопрос

Я использую composer с symfony php.

Есть один bundle A который зависит от другого bundle B v 1.1.

Но у меня есть последняя версия bundle B v 2.

Теперь я хочу установить bundle A без установки его зависимости bundle B v 1.1.

Как мне поступить?Пожалуйста, предложите.

Это было полезно?

Решение

установка:

Последняя версия ladybug-bundle - это 1.0.2 но тем временем произошло еще несколько коммитов.Для этого требуется версия божьей коровки 1.0.8 который также не включает в себя последние изменения.

решение:

Простым решением было бы использование встроенный псевдоним.Что-то вроде:

"require" : {
    "raulfraile/ladybug-bundle": "dev-master as 1.0.3"
    "raulfraile/ladybug": "dev-master as 1.0.9"
}

альтернатива:

Вы можете определить пакет с таким же именем в своем композитор.json это включает в себя измененную зависимость.

Просто скопируйте определение пакета из исходного пакета, добавьте расположение dist/source и отредактируйте требования.

затем composer будет использовать это новое определение пакета, поскольку он выбирает первое совпадение из всех известных репозиториев (packagist всегда запрашивается последним).

Вы должны выбрать конкретную фиксацию для dist-zip.Пример:

"repositories": [
    {
        "type": "package",
        "package": {
            "name": "raulfraile/ladybug-bundle",
            "version": "1.0.3",
            "require": {
               "raulfraile/ladybug" : "~1.0@dev"
            },
            "dist": {
                "url": "https://github.com/raulfraile/LadybugBundle/archive/5c3739a881313f63f7b47ace49af5deeed211362.zip",
                "type": "zip"
            },
        }
    }
],

Теперь требуется "raulfraile/ladybug-bundle": "~1.0" В вашем композитор.json и он будет использовать 1.0.3 версию, которую вы определили сами.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top