Rama de rebase de Git

Estoy un poco confundido por git haber trabajado previamente con svn.

Me retiré de la sucursal principal, creé mi twig de características, trabajé en ella, agregué y comprometí mis cambios localmente, empujé a remoto y luego presenté mi sucursal a jenkins y todas las testings pasaron.

Mientras tanto, la twig principal se ha movido, así que he comprobado el desarrollo, he sacado los últimos cambios y luego he cambiado mi twig a la última copy del desarrollo.

Esto significa que mis testings unitarias y las testings de integración corrieron en contra de la última copy de mi código, pero no la última copy del desarrollo.

Pensé que ahora podría volver a colocar los chanegs en mi sucursal remota para darle los últimos cambios al desarrollo y luego volver a ejecutar mis testings, pero el estado de git dice que no hay nada que confirmar y que mi directory de trabajo está limpio.

¿Por qué es que mi sucursal no reconoce que hay cambios en el desarrollo que podría querer impulsar para volver a ejecutar mis testings?

Una rebase reescribe completamente sus cambios, reemplazando las confirmaciones anteriores por otras nuevas. Por lo tanto, no tiene nada nuevo que comprometer (ya que se cambiaron sus compromisos anteriores), pero debería poder volver a enviarlos a su sistema de CI.

Tenga en count que es posible que necesite forzar el empuje con git push --force para replace la twig que ya ha empujado allí. No haga eso fuera de las twigs de funciones en las que solo desea que se ejecute su CI, de lo contrario causará problemas a los otros miembros de su equipo.