Я переношу код проекта java maven в GIT из Perforce (P4), и там, где каждый компонент выпускается индивидуально, а параллельные выпуски поддерживаются, поскольку git не позволяет извлекать по subdir в отличие от p4, я решил использовать подмодули Git.
Теперь у моего суперпроекта есть несколько подмодулей, и у каждого подмодуля есть ветвь master, development и support, так что M (master) моего суперпроекта отслеживает 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, и он работает, но его нужно обновлять после каждого выпуска, прежде чем объединять его с master из ветки dev (Git Flow).
Я использую это, но оно становится ручным и путает с новымпользователи.
git submodule foreach --recursive git checkout develop
Есть ли лучший способ автоматизировать эти вещи?