【发布时间】:2011-07-23 04:30:54
【问题描述】:
我正在使用 GIT 来管理内容管理系统 (CMS) 项目。 CMS 可以有多个插件(模块)。
所以基本上,我想要 3 种类型的存储库:
- 核心 CMS 开发(每个新项目都是对上一个稳定且未配置的版本的检查)
- 每个模块/插件 1 个存储库。 (每个新项目都会检查他们想要实现的模块的最后一个稳定版本)
- 每个项目 1 个存储库(每个客户端将是一个代表核心 CMS 和模块的个性化的存储库)
对于类型 1 和 2,我猜它是简单的基本存储库。 但是当涉及到客户项目时,我会感到困惑:
- 首先我将克隆 CMS,然后进入 /modules/ 文件夹并再次克隆所有必需的模块?这将在存储库中创建一个存储库!第一个 repo 会尝试记录每个模块的 .git/ 文件夹吗?
- 我不能使用子模块,因为每个客户都需要个性化他们的模块。
- 如果我修改了模块的核心组件(不是个性化,只是错误修复),我可以将该单个文件推送到原始模块存储库吗?
- (不谈论将四处传播的模块 unitTest )
所以问题是: 我应该如何组织存储库/文件/文件夹以提高效率?
【问题讨论】:
标签: git module code-organization project-organization