git push no actualiza la twig remota

Estoy haciendo este command con git:

git push origin mybranch 

Sigue diciendo "Todos al día", pero no pasó nada en el lado del server. Creo que hice algo mal antes, pero no estoy seguro de dónde:

Ayer hice una confirmación con un número de confirmación [c1] y empujé la confirmación al server. Luego traté de sacar la actualización de otro desarrollador:

 git pull origin another 

Luego, ejecuto el jalón con un número de confirmación [c2] y lo envío al server. Pero después de la extracción, el proyecto se cuelga a menudo, así que decidí deshacer la extracción:

 git checkout [c1] 

Luego trabajé en [c1] e hice 3 commits pero no presioné al server. Esta noche, cuando intenté enviar el último commit [c5] al server, seguía diciendo "Todo al día", pero la twig del server siempre se queda en [c2]. Yo si:

 git branch 

de mi lado y encontré que estoy en (ninguna sucursal). Entonces hice un

 git checkout -b newbranch 

Luego veo la nueva twig reemplazada (sin ramificación). Entonces lo hice

 git push origin newbranch 

Finalmente empujado al server. Sin embargo, no sé qué sucedió durante estos commands? ¡Gracias!

En GIT deberías estar en una sucursal para impulsar algunos cambios.

Que pasó ?

Todo se debe al siguiente command.

" git checkout [c1] "

Digamos que al principio estabas en la twig B1 y HEAD apuntando para cometer [c2] . Si realiza un checkout de un commit sha directamente, lo pone en un estado de "cabeza separada", que básicamente significa que el sha actual que su copy de trabajo ha desprotegido, no tiene una twig que lo señale. Y ahora has cometido 3 commits más (que no estaban en ninguna twig). Entonces, la única forma de ahorrarle trabajo es unir su cabeza a alguna twig. eso es lo que hiciste usando el command " git checkout -b newbranch "

¿Qué se pudo haber hecho?

en lugar de verificar la confirmación [C1] directamente,

Opción 1

Si no necesita los cambios de commit [c2], podría haber revertido [C2] usando " git revert [c2] "

Opcion 2

Si no necesitas los cambios de commit [c2] y quieres eliminarlo del historial de git también, podrías haber revertido el [C2] usando " git reset –hard HEAD ^ " y forzarlo usando " git push -f "

Lo más probable es que sea porque te perdiste la opción -u (para rastrear la twig ascendente) en tu git push. Debería haber sido

 git push -u origin newbranch. 

Consulte este enlace de SO para get más información: ¿cómo hacer que una twig de Git existente rastree una twig remota?