Eu tenho um superprojeto git que faz referência a vários submódulos e estou tentando bloquear um fluxo de trabalho para o restante dos membros do meu projeto trabalharem.
Para esta pergunta, digamos que meu superprojeto seja chamado superye o submódulo seja chamado subby. (Em seguida, há uma simplificação do que estou tentando fazer ... Na verdade, não estou usando as ramificações para versões, mas achei que seria mais fácil definir como uma pergunta.)
Minha ramificação principal de superytem a tag v1.0do projeto git subbyreferenciada como um submódulo. A ramificação de superychamada one.onee alterou a referência do submódulo para apontar para a tag v1.1de subby.
Posso trabalhar em cada uma dessas ramificações sem problemas, mas se tentar atualizar a one.oneramificação com alterações da masterramificação, recebo alguns conflitos e não sei como resolvê-los.
Basicamente, depois de executar um git pull . mastertempo no subbyramo, parece que ele cria submódulos adicionais.
Antes do pull / mesclar, recebo a resposta desejada git submoduleda one.oneramificação:
$ git checkout master
$ git submodule
qw3rty...321e subby (v1.0)
$ git checkout one.one
$ git submodule
asdfgh...456d subby (v1.1)
Mas após a atração, ele adiciona submódulos adicionais quando executo 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)
Como faço para excluir / ignorar as referências indesejadas do sub-módulo e confirmar meus conflitos e alterações? Ou existe um parâmetro que eu possa usar com o meu original git pullque ignorará meus submódulos?