0

我一直在思考如何实现以下目标。认为我不是 Git 专家,无法拥有足够的知识来构建良好的基础架构。你们中的任何人都可以给我建议吗?

设想:

产品A、B、C 客户X、Y、Z

Client X has Product A only.
Client Y has Product A and B.
Client Z has Product B and C.

最初我认为基础应该分别是 Repo A、B 和 C,如果客户对产品有特定要求,它们每个都将在不同的文件夹中有单独的模块。但是后来我想到了,如果我从 Repo A 中获取和拉取呢?单独的模块会立即被拉到一起吗?我应该怎么做或任何其他更好的基础设施?

4

1 回答 1

1

如果我从 fetch 和 pullRepo A怎么办?单独的模块会立即被拉到一起吗?

不:每个回购都是独立的。

我会推荐三个额外的 repos,用于引用正确的submodules

  • RepoXfor Client X: 引用一个子模块A
  • RepoYfor Client Y:引用两个子模块AB
  • RepoXfor Client Z:引用两个子模块BC

记录给定客户所需的每种产品的确切 SHA1 的想法(带有子模块)。
这样,如果你拉一个Product回购:

  • Product它对其他回购没有任何影响
  • 您在父 repo(repo)中返回上一级Client,添加并提交子模块的新状态,记录您在所述子模块中所做的更改。
于 2013-11-26T07:50:50.673 回答