Git子模块总是可以根据超级项目分支名称跟踪同名分支

时间:2018-05-18 06:29:32

标签: git maven perforce git-submodules

我正在从Perforce(P4)将Java maven项目代码迁移到GIT,并且每个组件都是单独发布的,并且支持并行版本,因为git不允许通过subdir签出,而不像p4我决定使用Git子模块。

现在我的超级项目有多个子模块,每个子模块都有一个主,开发和支持分支,以便我的超级项目的M(主)跟踪子模块的M,子模块的D跟踪D和子模块的S跟踪S.

superproject 
    -- pom.xml
    submodule 1
         -- pom.xml
    submodule 2
         -- pom.xml
    .
    .
    submodule 10 
         -- pom.xml

所以我希望超级项目分支应跟踪所有子模块中的相同分支

 Superproject (Master, Dev, Support)
  - submodule 1  (Master, Dev, Support)
  - submodule 2  (Master, Dev, Support)
  - ....
  - submodule 3 (Master, Dev, Support)

是否有一种简单的方法可以强制执行任何分支超级子目录的检查,子模块也应该检出同一个分支?

我尝试在.gitmodule文件中添加分支并且它可以工作,但是需要在每次发布之后更新它,然后再将它从dev分支(Git Flow)合并到master。

我正在使用它,但它变得手动并且让新用户感到困惑。

 git submodule foreach --recursive git checkout develop

有没有更好的方法来自动化这些东西?

0 个答案:

没有答案