La twig de Git divergió después de la rebase

He reajustado una twig localmente que ya estaba empujada.

Git está aconsejando que mi twig y mi control remoto hayan divergido y que:

"y tienen 109 y 73 commits diferentes cada uno, respectivamente"

¿Impulsará mi sucursal resolver esto? ¿Es esto esperado después de una rebase?

Cuando restaure una bifurcación, debe volver a escribir las confirmaciones para cualquier confirmación que esté por encima de las confirmaciones en la bifurcación en la que está modificando. Esto se debe a que una de las properties de una confirmación es su padre (o padres). Cuando restaure, está cambiando el padre de la confirmación local más antigua de su sucursal y, por lo tanto, cambiará los hashes de confirmación de todas sus confirmaciones locales, ya que este cambio surge de forma transitoria a través de las confirmaciones.

Como ya había empujado la twig, debería haberse fusionado en la twig fuente, en lugar de volver a basarla en ella. Es posible "forzar el empuje" de su nueva bifurcación (usando el indicador -f ), pero un empuje normal no funcionará, ya que la integridad del historial de bifurcaciones se verá alterada. Si está queueborando con otros en esta twig, forzar la fuerza es una mala idea, ya que hará que otros queueboradores se confundan mucho cuando su historial de repente no coincida.

TL; DR: si no queueboras, presiona la twig con push -f. Si es así, restablezca la twig al estado anterior y, en su lugar, realice la fusión en la twig de origen.

Todos tus commits han cambiado los ids, por lo que la diversión no es realmente una divergencia.

Para resolver su problema , debe sobrescribir su twig remota:

 git push -f origin experiment 

http://git-scm.com/book/ch3-6.html

Explicación:

Vea cómo en esta image C3 no se pone como C3 después de la rebase, sino como C3 '. Esto se debe a que no es exactamente C3, pero tiene todos sus cambios de código.

Rebase

En esta otra image obtienes la image de lo que se ve una rebase cuando se trata de un control remoto, y por qué hay una distracción.

diverge y git push

En cualquier caso, después de hacer la inserción forzada, le dirá que hizo una (actualización forzada), usted debería estar bien en ese punto.

Verifique el enlace en la parte superior y busque "git push –force". Verás una explicación más detallada.