У меня такая ситуация с git version 2.8.0.windows.1
.
У меня есть одна ветка " release " основного проекта, и я добавляю туда каждый раз, когда у меня выходит новая версия.
У этого проекта есть подмодуль, который разрабатывается параллельно, поэтому я ожидаю, что там будет много коммитов.
Мастер проекта ветвь и Мастер субмодуля ветви идут впереди (почти) параллельно.
Мастер фиксации 1 => Мастер фиксации 2 => Мастер фиксации 3 => Мастер фиксации 4
Фиксация подмодуля 1 => Фиксация подмодуля 2 => Фиксация подмодуля 3 => Фиксация подмодуля 4
В этом случае Master Commit 4 выровнен с Submodule Commit 4 .
Проблема возникает, когда кто-то пытается получить ветку release слишком поздно.
Поэтому, если я нажимаю ветку release на Master Commit 1 , и кто-то тянет ветку релиза, когда мы находимся на Master Commit 4 , мы имеем смещение (потому что Релиз связан с Master Commit 1 , в то время как сейчас мы находимся на Submodule Commit 4 ).
Решение, которое я вижу, состоит в том, чтобы каким-то образом принудительно Submodule Commit 1 to release ветка, но я пока не знаю, как.
Я знаю, что отличным решением было бы просто добавить ветку или тег в подмодуль, как объяснено здесь .
Но я не имею полномочий над хранилищем подмодулей, поэтому мне будет нелегко устанавливать там ветки или теги.
Существуют ли какие-либо обходные пути для принудительной фиксации подмодуля в моей ветке релиза и , а не просто ветка / тег подмодуля ?