realmente debería tener un flujo de trabajo que le permite hacer todo esto mediante la fusión:
- x - x - x (v2) - x - x - x (v2.1)
\
x - x - x (wss)
Así que todo lo que tiene que hacer es git checkout v2.1
y git merge wss
. Si por alguna razón realmente no puede hacer esto, y no puede usar git rebase para mover su rama wss al lugar correcto, el comando para tomar una confirmación simple de alguna parte y aplicarla en otro lugar es git cherry-pick. Simplemente revisa la rama en la que deseas aplicarlo y ejecuta git cherry-pick <SHA of commit to cherry-pick>
.
Algunas de las formas rebase podría ahorrar:
Si su historia es el siguiente:
- x - x - x (v2) - x - x - x (v2.1)
\
x - x - x (v2-only) - x - x - x (wss)
Usted podría utilizar git rebase --onto v2 v2-only wss
para mover WSS directamente sobre v2:
- x - x - x (v2) - x - x - x (v2.1)
|\
| x - x - x (v2-only)
\
x - x - x (wss)
Entonces ¡puedes unirte! Si realmente, realmente, realmente puede no llegar al punto donde se puede fusionar, puede seguir utilizando rebase hacer efectiva varios cereza-picks a la vez:
# wss-starting-point is the SHA1/branch immediately before the first commit to rebase
git branch wss-to-rebase wss
git rebase --onto v2.1 wss-starting-point wss-to-rebase
git checkout v2.1
git merge wss-to-rebase
Nota: la razón por la que se necesita un poco de trabajo adicional para hacer esto es que está creando commits duplicados en su repositorio. Esto no es realmente una buena cosa: el objetivo de una fácil bifurcación y fusión es poder hacer todo haciendo un commit (s) en un lugar y fusionándolos donde se necesiten. Los commits duplicados significan la intención de nunca fusionar esas dos ramas (si decides que quieres más adelante, obtendrás conflictos).
Para simplemente copiar commits (o un rango de commits) de una rama a otra, esta respuesta me ayudó mucho: http://stackoverflow.com/questions/1994463/how-to-cherry-pick-a-range-of -commits-and-merge-into-another-branch/1994491 # 1994491 – caramba
[Confirmaciones específicas de Cherry-Picking desde otra sucursal] (https://ariejan.net/2010/06/10/cherry-picking-specific-commits- from-another-branch /) – KyleMit