我正试图在Git中正确地设置子模块,我想确保正确地使用它。
我叫了主仓库 MyProject . 我有一个二级存储库,其中包含所有代码生成的数据访问 Data . 我想设置 数据 作为 我的项目 .
MyProject
Data
数据
我的项目
数据 很少改变,除非有一个模式改变,或者一个小的错误修复。
假设我在 我的项目 这需要更改架构。通常我会创建一个分支 我的项目 打电话 NewFeature 并在那里签入我的所有更改,直到它准备好与master合并。我还想为 数据 因此任何模式更改都与 Master 直到我的更改可以合并。
NewFeature
Master
什么是正确的工作流程,或者是否有一个?
谢谢!
子模块中的分支与父回购的分支完全分离。
创建 NewFeature 父repo上的功能分支并不意味着您必须在子模块中创建相同的功能分支。 这只意味着您的母公司回购将引用子模块中的新提交 新功能 分支。子模块提交可以在任何分支中进行(仅在子模块中定义)。
新功能
也就是说,最好还是创造一个 新功能 在子repo中,建立某种命名约定,使您能够在父repo和子模块之间找到高度耦合的提交集。 (另外,如问题所示” Git submodules: Specify a branch/tag “,子模块本身始终首先处于分离头模式)