git selección de cereza en git significa elegir una confirmación de una rama y aplicarla a otra rama. Esto contrasta con otras formas como unir y rebases que normalmente aplica muchas confirmaciones en otra rama.
git cherry-pick es como rebase , un concepto avanzado y también un comando poderoso. Se utiliza principalmente si no desea fusionar toda la rama y desea algunas de las confirmaciones.
¿Cuándo utilizar la selección de cerezas?
Supongamos que un desarrollador no reconoce en qué rama se encuentra actualmente y, por error, se compromete con otra rama en lugar de hacerlo con la rama principal. Ahora, para solucionarlo, primero tiene que ejecutar mostrar git , luego guarde la confirmación, consulte la rama principal, aplique un parche allí y confirme con el mismo mensaje de confirmación. Pero todo esto se puede hacer automáticamente usando un solo comando, es decir. selección de cereza.
Para comprender mejor, consulte el siguiente diagrama de la siguiente manera:

Antes de la selección de cerezas

Después de la selección de cerezas
El comando para Cherry-pick es el siguiente:
git cherry-pick>
Confirmar hash: Un hash de confirmación es un identificador único generado por Git. Cada confirmación tiene su hash de confirmación.
Nota: Mientras usa este comando, asegúrese de estar en la rama en la que desea aplicar la confirmación.
Cómo utilizar ¿Seleccionar cerezas?
Aquí está la explicación paso a paso del uso del comando cherry-pick en el proyecto creado a continuación, que se muestra paso a paso de la siguiente manera:
Paso 1: Abriendo el git bash y creando un nuevo proyecto llamado muestra e inicializando el repositorio usando el Hace calor dominio.
cadena a json java
Paso 2: Creando un ‘ .TXT' archivo usando nosotros comando al proyecto, digamos un archivo de índice y agréguelo a nuestro proyecto de muestra y haga una confirmación y escriba un mensaje de confirmación antes de presionar Enter.
Nota: Después de ejecutar el nosotros comando, escriba :wq para guardar y salir del archivo.
Uno puede verificar su compromiso por registro de git comando fácilmente:
Paso 3: Ahora supongamos que tenemos 2 versiones, así que cree 2 ramas diferentes usando el rama git comando y moverse a una rama, digamos 2 usando git pago dominio.
Nota: Se pueden ver simplemente todas las ramas ejecutando el comando git branch como se muestra en el siguiente diagrama.
Etapa 4: Ahora suponga que desea trabajar en alguna característica nueva, por lo que al crear y agregar un nuevo archivo de características, digamos feature.txt usando nosotros y agregar comando respectivamente como se muestra a continuación. Luego confirme sus cambios con un mensaje de confirmación.
Uno puede verificar su confirmación mediante el comando git log como se muestra a continuación:

Muestra claramente nuestro primer compromiso donde está nuestra rama 1 y en la rama 2 se ha alejado más y actualmente estamos trabajando en nuestra función en la rama 2.
Paso 5: Ahora supongamos que encontramos un error en nuestra función y descubrimos que este mismo error también está presente en nuestra rama 1.
Y ahora estamos intentando solucionar algún error o problema como se muestra a continuación agregando un archivo fix.txt, supongamos que lo agregamos a la rama actual, es decir, 2 y realizamos los cambios necesarios.
Comprobando nuestros compromisos finales:
Paso 6: Ahora, Hemos solucionado el error en la rama 2, pero también necesitamos agregar esta corrección a nuestra rama 1, pero no queremos fusionar esta rama 2 con nuestra rama 1, porque es posible que el trabajo aún esté en marcha en la función.
conversión de cadena a número entero en java
Por lo tanto, en este escenario, podemos seleccionar este compromiso en particular. Para hacerlo, simplemente copie el picadillo valor resaltado en el diagrama anterior, luego vaya a la rama 1 usando checkout y luego use el comando selección de cereza y pegamos el hash que acabamos de copiar.
Como se ve claramente en lo anterior, notamos que anteriormente solo teníamos index.txt antes de realizar la selección, pero ahora tenemos el archivo fix.txt también en nuestra primera rama.
Ahora si intentamos comprobar registro de git –una línea , podremos ver que el compromiso también vino en la rama 1.
Algunos casos de uso importantes de Cherry-pick
Las siguientes son algunas aplicaciones comunes de Cherry-Pick:
- Si por error realiza una confirmación en una rama incorrecta, utilice la selección selectiva para aplicar los cambios necesarios.
- Supongamos que tanto el frontend como el backend de un proyecto van a utilizar la misma estructura de datos. Luego, un desarrollador puede utilizar la selección selectiva para seleccionar el compromiso y utilizarlo en su parte del proyecto.
- Cuando se encuentra un error, es fundamental enviar una solución a los clientes finales lo más rápido posible.
- En algunas ocasiones, una rama de componente puede envejecer y no converger en la rama principal y la solicitud puede cerrarse, pero como git nunca pierde esas confirmaciones, se puede seleccionar y volver.
Desventajas de usar Cherry Pick
La selección selectiva no debe usarse siempre, ya que puede provocar confirmaciones de copia y numerosas situaciones en las que la selección selectiva funcionaría; considerando todos los aspectos, se prefieren las fusiones convencionales. Además, en la situación en la que las confirmaciones de 2 o más ramas actualizan líneas de código similares con varias sustancias y seleccionan una confirmación para la otra rama, también genera conflicto.
Conclusión
El comando cherry-pick de Git es una herramienta poderosa para aplicar selectivamente confirmaciones específicas entre ramas. Es excelente para corregir errores y compartir código, pero usarlo en exceso puede generar problemas, especialmente cuando las confirmaciones tocan las mismas líneas de código. Por lo tanto, utilícelo sabiamente para mantener un historial de código limpio y eficiente.