我正在开发一个库(微框架)。决定引入迁移管理。为此,我在项目的根文件夹中/var/www/project/有一个sql-migration执行某些逻辑的文件。它通过控制台访问。php sql-migration create [NAME].
据我了解,如果我们制作一个想要放置在packagist.org中的项目,那么当它在不同的地方初始化时,它将适合vendor/developername/project/. 以及如何使根元素(项目核心)位于初始化vendor文件sql-migration夹的根目录中?例如,它是如何在Yii中实现的。
实际上,解决方案非常简单。有必要创建 2 个存储库:核心和骨架。下面我将提供发布在 packagist.org 上的两个项目的 composer.json。
核:
骨骼:
如您所见,这里隐藏了一些信息,但重点是内核具有默认类型
type并且是一个库。并且项目骨架有typeproject。依赖项指示内核及其版本。整个奇迹的启动是这样的
composer create-project ТУТ_СКЕЛЕТ ИМЯ_ПРОЕКТА:create-project一次执行所有依赖项的拉取和安装。