迁移到单仓库
从多仓库设置迁移到单仓库设置可以为生产力带来巨大的好处,尤其是在以下情况下
- 您发现很难在应用程序之间共享代码
- 您希望团队构建代码的方式采用统一的方法
迁移到单仓库可能令人生畏。但是,通过仔细的计划,它可以非常顺利地进行。
文件夹结构
让我们想象一下您的多仓库设置如下所示
web (repo 1)
├─ package.json
docs (repo 2)
├─ package.json
app (repo 3)
├─ package.json
您有三个仓库,web
、docs
和 app
。它们没有任何共享依赖项,但您注意到它们之间存在大量重复代码。
在单仓库中组织它们最好的方法如下所示
my-monorepo
├─ apps
│ ├─ app
│ │ └─ package.json
│ ├─ docs
│ │ └─ package.json
│ └─ web
│ └─ package.json
└─ package.json
要开始共享代码,您可以使用内部包 模式,从而创建一个新的 packages
文件夹
my-monorepo
├─ apps
│ ├─ app
│ │ └─ package.json
│ ├─ docs
│ │ └─ package.json
│ └─ web
│ └─ package.json
├─ packages
│ └─ shared
│ └─ package.json
└─ package.json
如果您计划迁移到单仓库,请尝试草拟出您要实现的精确文件夹结构。
设置工作区
将您的应用程序放在正确的文件夹结构中后,您需要设置工作区并安装依赖项。我们关于设置工作区 的部分应该会有所帮助。
处理任务
现在您的工作区已设置好,您需要弄清楚如何在新的单仓库中运行任务。我们有以下部分