commits múltiples usando Cherry-Pick en Git

Abdul Jabbar 30 enero 2023
  1. Diferencia entre el comando Git merge y Git Cherry-Pick en Git
  2. el compromiso de corrección de errores Cherry-picking en Git
  3. Compromiso múltiple Cherry-picking en Git
  4. Use el comando Rebase para elegir los cambios deseados en una rama específica en Git
commits múltiples usando Cherry-Pick en Git

Después de completar nuestro trabajo de ramificación, normalmente no necesitamos fusionar en los archivos existentes.

A menudo, necesitamos obtener algunos compromisos particulares de diferentes ramas en lugar de tratar con todos ellos en una rama en particular. Esa es la razón por la cual se usa el comando git-cherry pick en Git.

Diferencia entre el comando Git merge y Git Cherry-Pick en Git

git merge es como el comando git cherry-pick. El comando Git cherry-pick se usa para asimilar los cambios de otra rama a nuestra rama deseada.

Mientras usamos el comando merge, generalmente se nos permite asimilar todos los cambios realizados en la otra rama en la que deseamos.

Pero, por otro lado, a veces solo necesitamos algunos cambios en nuestra rama deseada. Y para este propósito, el comando cherry-pick de Git es la opción más segura.

el compromiso de corrección de errores Cherry-picking en Git

El Cherry-picking puede explicarse típicamente como la actualización de una corrección de errores a la versión anterior de nuestro software, lo que significa que para obtener sólo algunos commits de corrección de errores explícitos de entre cientos de correcciones de errores en una rama particular.

Luego use ese compromiso corregido de errores en particular en el futuro por cualquier motivo. Esta declaración o comando se usa principalmente cuando el equipo desea corregir algún error importante en la aplicación web o de escritorio de producción o en vivo.

Con este comando, el equipo prepara el lanzamiento y lo implementa en el entorno de producción o en vivo.

Compromiso múltiple Cherry-picking en Git

Para algunos casos, queremos aplicar a cherry-pick en múltiples commits simultáneamente en diferentes ramas. Luego, primero debemos identificar ambos compromisos y usar los siguientes comandos en él.

Después de eso, cherry-picking se puede hacer en los múltiples commits utilizando la notación de puntos entre ambas ramas A y B como se muestra en el siguiente comando:

$ git cherry-pick A..B

Después de aplicar este comando, commit A no se asimilará al cherry-pick.

Para asimilar también commit A, podemos usar la siguiente sintaxis:

$ git cherry-pick A^..B
Nota
el commit debe colocarse en el orden perfecto. Commit A debe ser más antiguo que commit B. Si esto no está en perfecto orden, el comando utilizado fallará y debemos usarlo de acuerdo con la condición establecida anteriormente.

Use el comando Rebase para elegir los cambios deseados en una rama específica en Git

Tenemos otra forma de elegir los cambios deseados o commits en una rama específica usando el comando rebase en Git. Podemos rebase el comando con la opción sobre en este método.

Podemos usar git rebase --onto en dos tipos de casos:

  • La primera condición es que tenemos una rama que quiere reemplazar su rama principal en un repositorio.
  • En segundo lugar, queremos eliminar de inmediato algunas commits de nuestra rama actual en un repositorio.

Supongamos que nuestra rama es la rama que termina en D, y esta es la rama deseada a la que queremos mover C-Y.

git reset --hard Y

git rebase --onto A B

Nos ayuda a hacer un rebase comenzando desde el punto particular o haciendo el commit deseado. Podemos gestionar completamente qué rebase y dónde rebase en un commit específico de la rama.

Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn

Artículo relacionado - Git Commit