Elegir una versión específica en Git y moverla a una twig diferente

Tengo 6 versiones del código 1,2,3,4,5,6 en desarrollo. Hay una twig diferente para la producción que es la versión probada del código de desarrollo. Quiero promocionar la versión 4 para producción hoy y en una versión posterior 6 para producción. ¿Cómo puedo hacer esto sin mover ningún file manualmente?

Necesita volver a establecer la base de su repository local y luego enviarlo a la sucursal de producción.

git checkout <develop_branch> git rebase <specific commit(4)> git push -u origin production_branch_name 

Luego más tarde otra vez

 git rebase <specific commit(6)> git push -u origin production_branch_name 

Espero que ayude.

Hay dos enfoques comunes para hacer esto

  • Rebase
  • Fusión

@metro. aibin describió el enfoque Rebasing. Rebasing le permite reescribir el historial y realizar los cambios en Development Branchlook tal como se realizaron en la Sucursal de publicación. A algunas personas les gusta más porque hace que el tree final sea less ramificado. A otros no les gusta porque enturbia la verdadera historia de desarrollo. Además, a las personas que están acostumbradas al control de versiones tradicional a menudo no les gusta el reajuste.

El otro enfoque es Fusionar donde promociona un punto de compromiso específico de la Rama de Desarrollo en la Rama de Liberación. La desventaja de este enfoque es que lo obliga a crear confirmaciones adicionales en la Sucursal de publicación para realizar la fusión.

Para get más información, lea el Tutorial de fusión vs. rebasado de Atlassian. Muestra ambos enfoques.