¿Cómo manejo los conflictos con los submódulos git?
Tengo un superproyecto git que hace referencia a varios submódulos y estoy tratando de bloquear un flujo de trabajo para que el resto de los miembros de mi proyecto trabajen dentro.
Para esta pregunta, digamos que mi superproyecto se llamasupery
y el submódulo se llamasubby
. (Entonces es una simplificación de lo que estoy tratando de hacer ... En realidad no estoy usando las ramas para las versiones, pero pensé que sería más fácil presentarlas como una pregunta).
Mi rama principal desupery
tiene la etiquetav1.0
del proyecto gitsubby
referenciado como un submódulo. La rama desupery
llamadoone.one
y cambió la referencia del submódulo para apuntar a la etiquetav1.1
desubby
.
Puedo trabajar dentro de cada una de estas ramas sin problemas, pero si trato de actualizar elone.one
rama con cambios desde lamaster
sucursal Recibo algunos conflictos y no sé cómo resolverlos.
ásicamente después de ejecutar ungit pull . master
mientras que en elsubby
rama, parece que crea submódulos adicionales.
Antes de la extracción / fusión, recibo la respuesta deseada degit submodule
desde elone.one
rama
$ git checkout master
$ git submodule
qw3rty...321e subby (v1.0)
$ git checkout one.one
$ git submodule
asdfgh...456d subby (v1.1)
Pero después de la extracción, agrega submódulos adicionales cuando ejecutogit 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)
¿Cómo elimino / ignoro las referencias de submódulos no deseados y confirmo mis conflictos y cambios? ¿O hay un parámetro que puedo usar con mi @ origingit pull
que ignorará mis submódulos?