У меня есть проект PHP (Laravel), который я разрабатываю, и он использует вспомогательный пакет, который я разработал, и который также модифицируется, пока я работаю над первоначальным проектом.Я хочу узнать, как лучше всего справиться с этим в composer.
Прямо сейчас, в моем файле composer.json, у меня есть путь к хранилищу, так что проект всегда будет использовать мою текущую версию.
"repositories": {
"local": {
"type": "path",
"url": "../../packages/my-account/my-package"
}
}
Путь находится в обязательном пути основного проекта, поскольку он содержит файлы, которые расширены в проекте.
"require": {
"php": "^7.1.3",
"fideloper/proxy": "^4.0",
"laravel/framework": "5.8.*",
"laravel/tinker": "^1.0",
"nothingworks/blade-svg": "^0.3.0",
"my-account/my-package": "^0.3.8@dev",
...
Раньше я просто открывал оба проекта, а затем обновлялпакет, и нажмите его, чтобы упаковать.Затем подождите, пока другой пакет загрузит обновление, но это, похоже, было такой пустой тратой времени, тем более что при запуске некоторых модульных тестов я обнаружил бы проблему только после обновления.
Вместо этого у меня есть мягкая ссылка вмоя система (MacOS Mojave) из папки моего поставщика в папку моей учетной записи, чтобы в PhpStorm я мог открывать нужные мне файлы и одновременно вносить изменения в проекты.Я в основном только когда-либо совершаю, когда все работает как ожидалось.Это сэкономило огромное количество времени, однако у него есть недостаток ...
Каждый раз, когда я фиксирую основной проект, мне нужно удалить кусок репозитория из моего composer.json, чтобы переместить его в стадию или в производство.,Поскольку нет repositories-dev
или чего-то в этом роде.
Есть ли лучший рабочий процесс?Используете 2 composer.jsons?ИЛИ какая-то магия PhpStorm, которая может решить эту проблему, поэтому я не убираю кусок кода при каждом коммите?