Git: ¿cómo actualizar branch con master?

Esta es mi situación:

  • He comenzado una nueva twig (llamémosla foo ) y trabajamos en eso,

  • He empujado a foo a control remoto

  • algo tenía que hacerse en master , así que cambié a master, hice las correcciones y empujé,

Ahora: ¿cómo actualizo foo con master ? Porque necesito trabajar en foo , pero quiero que esté alineado con los cambios en el master . Entiendo que no se supone que rebase a rebase una rebase una twig que se haya publicado …

¡Gracias!

Es bueno que sepa que no debe volver a establecer la base y forzar una twig publicada.

¿Necesitas los cambios de master en foo ? Lo más natural para hacer aquí es hacer justamente eso. Combina los cambios de master en foo .

Tu situación:

 o---o---o - master \-o---o---o - foo 

entonces:

 $ git checkout foo $ git merge master 

conduce a una nueva fusión commit m in foo :

 o---o---o---------- - master \ \ \-o---o---o---m - foo 

Está claro de la historia lo que hiciste, y probablemente por qué. Incluso puede mencionar lo que necesita del master en el post de confirmación de m .

O fusionar master de foo

 git checkout foo git merge master 

O bien, si foo no es utilizado por otros desarrolladores y tienes autorización para forzar un empujón en el control remoto, entonces puedes volver a establecer la base y forzarlo:

 git checkout foo git rebase master git push -f remote 

Insisto, no existe el peligro de volver a basar y forzar las confirmaciones ya publicadas, siempre y cuando sepa que nadie, excepto usted, ha planeado trabajar en o desde esos compromisos hasta que obtengan sus confirmaciones reubicadas y publicadas. La próxima vez que tus colegas busquen desde el control remoto, verán que foo se actualizó por la fuerza, solo eso.