2

我正在尝试在 git 中正确设置子模块,并且我想确保我正确使用它。

我有一个名为MyProject. 我有一个二级存储库,其中包含我们所有的代码生成的数据访问,称为Data. 我想设置DataMyProject.

Data除非有架构更改或小错误修复,否则很少更改。

假设我正在添加一些MyProject需要更改架构的新功能。MyProject通常我会创建一个被调用的分支NewFeature并在那里签入我的所有更改,直到它准备好与 master 合并。我还想创建一个分支,以便在我的更改准备好合并之前Data,任何架构更改都保持独立。Master

什么是正确的工作流程,或者甚至有一个?

谢谢!

4

1 回答 1

2

子模块中的分支与父仓库的分支完全分开。

在父 repo 上创建NewFeature功能分支并不意味着您必须在子模块中创建相同的分支。
这仅意味着您的父 repo 将引用NewFeature分支中该子模块的新提交。子模块提交可以在任何分支中进行(仅在子模块中定义)。

话虽如此,最好在子存储库中创建一个NewFeature,以建立某种命名约定,使您能够在父存储库和子模块之间找到高度耦合的提交集。
(另外,如问题“ Git submodules: Specify a branch/tag ”中所示,子模块本身总是首先处于分离的 HEAD 模式)

于 2010-11-08T14:25:29.597 回答