Использование пользовательского шаблона тега версии \ пути vcs в composer.json - PullRequest
0 голосов
/ 04 июля 2019

У меня есть репозиторий svn *, который содержит коллекцию («MyCommonLib») библиотек, например, src \ LibA, src \ LibB и т. Д.

Я бы хотел опубликовать каждый Lib * как отдельный пакет для композитора. Я включил composer.json в каждую библиотеку Lib *, и я могу указывать composer на каждую магистраль \ src \ Lib *, и, кажется, это не имеет значения .... до тех пор, пока не появятся версии.

Структура тега имеет версию для всей коллекции tags\1.0\composer.json, что само по себе хорошо для коллекции (MCL). Однако это не подходит для Lib *, поскольку MCL \ composer.json! = MCL \ src \ LibA \ composer.json.

В идеале Я "просто" хочу указать в libA \ composer.json, что его "версии тегов" извлекаются из указанного пути. То есть tags\[version]\src\LibA\composer.json вместо стандартного болота tags\[version]\composer.json

Есть ли в любом случае, чтобы сделать это?

* Хотя SVN всегда будет на картинке, у меня есть возможность настроить зеркала git, если это поможет на всех .

PS Это может пахнуть как Использование Composer, когда несколько компонентов находятся в одном репозитории vcs , но его A) прошло 6 лет и B) Я специально спрашиваю о теге \ обнаружение шаблона версии, решившее само обнаружение базового пакета.

1 Ответ

1 голос
/ 04 июля 2019

Вы можете использовать настройки package-path, чтобы указать путь к пакету внутри репозитория:

"repositories": [
    {
        "type": "vcs",
        "url": "https://svn.example.org/",
        "package-path": "src/LibA/"
    }
]

Композитор должен использовать https://svn.example.org/trunk/src/LibA/composer.json, https://svn.example.org/branches/[branch name]/src/LibA/composer.json и https://svn.example.org/tags/[version]/src/LibA/composer.json в качестве путей для этого пакета.

См. пример в документации .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...