Je suppose dev
est votre branche principale.
Si vous INITIAL premier branchement feature
hors de dev
(ou d'une autre branche qui était au même point d'engagement à la tête de dev) et aucune modification n'a été engagé à dev
depuis cette ramification, quand à l'intérieur feature
(comme vous êtes en faisant la caisse) si vous rebassez à dev
, rien ne devrait arriver. HEAD
commit de dev
est déjà feature
validation de base.
Si les validations avaient été effectuées à dev
, la rebase aurait été rebasée sur la nouvelle dev
HEAD
.
Vous ne voulez pas rebasage dev
, vous rebasage votre branche feature
si nécessaire (si dev
ayant changé tout en travaillant sur votre fonction), puis fusionner la branche de fonction rebasées de nouveau dans dev
.
Voici mon flux en supposant dev est ma branche principale:
git checkout dev
git checkout -b feature
Maintenant, je suis dans ma branche de fonctionnalité. J'ai apporté quelques modifications à la branche de fonctionnalité, les valider, peut-être que dev a changé entre-temps. Toujours sur la branche de fonction, changeant ainsi de retour vers dev pour rechercher tous les changements
git checkout dev
git pull origin dev
Ainsi les changements se sont passées sur dev, donc je veux rebasage ma branche avec
git checkout feature
git rebase dev
Maintenant, je suis prêt à fusionner ma branche fonctionnalité dans dev
git checkout dev
git merge --squash feature
Squash est facultative, mais elle se condense des changements dans la branche de fonction en une seule COMMIT réinsèrent à dev.
Enfin, appuyez sur le nouveau dev retour pour d'autres de profiter
git push origin dev
'rebase' git change la branche courante, pas la branche sur laquelle vous voulez rebasage sur. – choroba
J'imagine que ce que vous voulez faire c'est probablement "git checkout feature", "git rebase dev", "git checkout dev" et "git merge feature". Cela met d'abord à jour le point de départ de la fonctionnalité vers la pointe de dev, puis fusionne les validations effectuées dans la fonctionnalité dans dev. – kaitoy