У меня есть суперпроект git, который ссылается на несколько подмодулей, и я пытаюсь заблокировать рабочий процесс, чтобы остальные члены моего проекта работали внутри.
Для этого вопроса, скажем, мой суперпроект называется supery
, а подмодуль называется subby
. (Тогда это упрощение того, что я пытаюсь сделать... Я фактически не использую ветки для версий, но я думал, что было бы проще всего выложить как вопрос.)
Моя главная ветвь supery
имеет тег v1.0
проекта git subby
, на который ссылается как подмодуль. Ветвь supery
называется one.one
и изменила ссылку подмодуля на то, чтобы указать тег v1.1
subby
.
Я могу работать в каждой из этих ветвей без сучка и задоринки, но если я попытаюсь обновить ветвь one.one
с изменениями в ветке master
, я получаю некоторые конфликты, и я не могу их разрешить.
В основном после запуска git pull . master
в то время как в ветке subby
, похоже, что он создает дополнительные подмодули.
Прежде чем вытащить/слить, я получаю желаемый ответ от git submodule
от ветки one.one
:
$ git checkout master
$ git submodule
qw3rty...321e subby (v1.0)
$ git checkout one.one
$ git submodule
asdfgh...456d subby (v1.1)
Но после pull, он добавляет дополнительные подмодули, когда я запускаю git submodule
:
$ git pull . master
Auto-merged schema
CONFLICT (submodule): Merge conflict in subby - needs qu3rty...321e
Automatic merge failed; fix conflicts and then commit the results.
$ git submodule
qw3rty...321e subby (v1.0)
asdfgh...456d subby (v1.1)
zxcvbn...7890 subby (v1.1~1)
Как удалить/игнорировать ссылки нежелательных субмодулей и зафиксировать мои конфликты и изменения? Или есть параметр, который я могу использовать с моим оригинальным git pull
, который будет игнорировать мои подмодули?