GIT Branching y pago y envío

Tengo la configuration de GIT para mi website, en la que tengo 3 twigs (desarrollo, puesta en escena, maestro). El desarrollo ya tiene algunos cambios por delante de la puesta en escena y el maestro, ahora había un requisito urgente para corregir un error.

Revisé una twig separada del desarrollo y realicé cambios para la solución urgente en ella

Ahora, cuando trato de fusionar esta nueva twig en puesta en escena, también me muestra todos los cambios anteriores, en lugar de mostrar los cambios que acabo de comprometer con esta twig.

¿Alguien puede decirme cómo debo crear una twig que no muestre otros cambios en la twig de desarrollo mientras se fusiona con la puesta en escena?

Cuando crea una nueva sucursal, tendrá todos los cambios de su sucursal desprotegida. En su caso, diga que se encuentra en la twig Dev y crea una nueva twig UrgentChanges & checkout que contendrá todo el contenido de la twig Dev . Ahora, si fusiona UrgentChanges para staging , va a tener trabajo de desarrollo + trabajo urgente (desde la twig UrgentChanges ) fusionada en etapas.

Lo que debería haber hecho es realizar primero el process de installation antes de crear la twig UrgentChanges . De esta forma, cuando fusionas UrgentChanges con la staging en staging , tendrá un trabajo de escenificación original + trabajo urgente.

Haga clic para leer más

Como afirma Prashanth, desea crear la nueva twig mientras tiene desviada la que desea desviar, en este caso dijo que deseaba modificar la twig de etapas.

Pero todos cometemos estos errores de vez en cuando, que es una de las razones por las que Git es tan genial, ¡no todo está perdido! Asegúrese de que todos sus cambios estén comprometidos con su bifurcación de arreglo urgente, y note desde git log el sha de las confirmaciones que desea aplicar a la bifurcación de almacenamiento intermedio.

Ahora revisa tu sucursal y, para mayor security, crea una nueva twig urgent2. Armado con los shas que anotaste anteriormente, puedes elegirlos para urgente2.

Hay muchos buenos tutoriales sobre la selección de cerezas. Aquí hay una: http://think-like-a-git.net/sections/rebase-from-the-ground-up/cherry-picking-explained.html

Como se indicó anteriormente, si no desea que los cambios en la twig de desarrollo estén presentes en su bifurcación urgente de solución de errores, en lugar de verificar desde la twig de desarrollo, debe realizar el pago desde la twig de etapas. Sigue los pasos a continuación

Si se encuentra en su twig de desarrollo actual, asegúrese de confirmar todos sus cambios y el cambio a la twig de etapas primero

 git checkout staging 

Una vez en la twig de etapas, puede verificar una nueva twig para la corrección de errores como se muestra a continuación

 git checkout -b urgentfixbranch 

Verifique que ahora se encuentra en la twig de emergencias urgente (desprotegido de la etapa) usando el command git branch

 git branch 

que muestra algo así como

 * urgentfixbranch staging master development 

* indica su twig actual

A continuación, puede realizar todos los cambios de código y las correcciones que necesite en esta sucursal y asegurarse de que la envíe a la sucursal. Una vez que se hayan realizado todos los cambios, puede fusionar estos cambios en la twig provisional de la siguiente manera

 git checkout staging git merge urgentfixbranch 

Esto combinará los cambios del código de corrección urgente en la puesta en escena y, como usted creó esta twig desde la puesta en escena y no desde el desarrollo, no tendrá otros cambios de desarrollo en su puesta a escena ahora. A continuación, puede eliminar la twig urgentefix después de haber fusionado los cambios en la transición.

 git branch -d urgentfixbranch 

¡Espero que esto ayude!