Tengo un pequeño equipo trabajando en un único repository, le pedí a cada uno de mis compañeros que crearan su propia twig y trabajaran allí, todos clonaron el repository y luego hicieron el siguiente command:
git checkout -b BitPankaj
BitPankaj
es nombre de twig de ilustración, comenzaron a trabajar en esta twig y cargaron allí el trabajo a través de
git branch --set-upstream origin BitPankaj
Ahora en mi repository puedo ver que esa twig aparece y sus confirmaciones también son visibles:
y Ramas:
Ahora cada uno de ellos intenta crear una request de extracción para revisar el código y fusionarse con la twig principal. así que intentaron hacer algo como esto:
Pero arroja un error de twigs no relacionadas:
Se produjeron los siguientes errores al save esta request de extracción: twigs no relacionadas
Las personas estamos aprendiendo a trabajar en git, ayúdenme con esto.
Esto es porque la twig BitPankaj
es una twig huérfana.
Eso significa que la twig BitPankaj
no se creó a partir de la twig master
(como esperabas), sino que puede usar la git checkout --orphan BitPankaj
lugar de git checkout --orphan BitPankaj
. La estructura de la twig se ve así:
A---B---…---C master D---…---E BitPankaj
Puede verificar doblemente en su repository local. Actualice / extraiga las twigs y muestre los loggings como un gráfico:
git checkout master git pull origin master git checkout BitPankaj git pull BitPankaj git log --oneline --decorate --graph --all #Or you can use gitk --all if you installed git bash
Para crear una request de extracción entre BitPankaj
y master
, debe cambiar la twig de BitPankaj
partir de la twig master
.
Para cambiar BitPankaj
basado en la última versión (confirmación C
) de la twig master
:
git rebase master BitPankaj git push -f origin BitPankaj
Luego, al historial de confirmaciones le gustará:
A---B---…---C master \ D---…---E BitPankaj
Para los cambios BitPankaj
twig basada en una versión anterior (como commit B
) de la twig master
:
git rebase <commit id for B> BitPankaj git push -f origin BitPankaj
Luego, al historial de confirmaciones le gustará:
A---B---…---C master \ D---…---E BitPankaj
Luego puede crear una request de extracción para fusionar BitPankaj
en la twig master
en bitbucket con éxito.
Debería poder usar –allow-unrelated-historys para forzar la fusión.
Deberías poder usarlo como:
git pull origin branchname --allow-unrelated-histories
para get información adicional, eche un vistazo a: –
Documentación de Git Merge