Estrategia para desplegar cambios entre ramas del servidor con Squash

De Telstock Wiki
Saltar a: navegación, buscar

Objetivo

El objetivo de este comando de Git (aplastar) es hacer que los Commits que se hayan realizado en una determinada rama, se compongan de un solo Commit el cual contendrá todos los Commits realizados los cuales se registraran en la rama a desplegar.

Esto nos permite llevar un mejor control del trabajo realizado, ya que en el historial de despliegue se mostraran los Commits que componen dicho despliegue en la rama.

Cambio de editor para commits

El editor Vim es el predeterminado para proporcionar los mensajes cuando se realizan los commits.

Para cambiar el editor predeterminado, debemos proporcionar las siguientes instrucciones:

Paso Comentario Instrucción Git Ejemplo
1 Iniciar Git Bash Here.
Bash Here.png
2 Como ejemplo definimos el editor Notepad++ como editor predeterminado. Se debe proporcionar la ubicación y nombre del editor ejecutable a utilizar. $ git config --global core.editor "'C:\Program Files\Notepad++\notepad++.exe'"
Configuracion Editor.PNG

Despliegue en ramas con Squash

Como ejemplo realizaremos un pase de la rama de Desarrollo a QA:

Paso Comentario Instrucción Git Ejemplo
1 Investigar con la persona encargada del área de Qa si es posible realizar el pase por pruebas pendientes actuales que haya con el proyecto.
2 Iniciar Git Bash Here.
Bash Here.png
3 Realizar un cambio a la rama origen de donde se va a tomar información para despliegue. $ git checkout development
Git Checkout.PNG
4 Descargar los últimos cambios del repositorio a la rama origen local. $ git pull origin development
Git Pull.PNG
5 Realizar cambio a la rama destino en donde se va hacer el despliegue. $ git checkout qa
Git Checkout QA.PNG
6 Descargar los últimos cambios del repositorio a la rama destino local. $ git pull origin qa
Git Pull QA.PNG
7 Realizar el Squash en la rama destino en base a los artefactos de la rama origen (DLL's, Actualizaciones de librerías, componentes, etc). $ git merge --squash --strategy recursive --strategy-option theirs origin/development
Git Squash Merge.PNG
8 Agregamos los archivos en la rama destino. $ git add .
Git Add.PNG
9 Realizar el Commit en la rama destino. $ git commit
Git Commit.PNG
10 En este punto se abrirá el editor predeterminado en el cual se proporcionara un comentario sobre el Commit a realizar.
Captura Comentario.png
11 Procederemos a guardar los comentarios sobre el Commit a realizar. En el caso de usar el editor predeterminado Vim presionar la tecla Esc + :wq!
Salvar Commit.PNG
12 Subiremos los cambios del despliegue a la rama destino. $ git push origin qa
Git Push.PNG