J'utilise les outils Git Flow et je me suis retrouvé dans un petit problème. Mes branches git ont divergé. J'ai lu la branche principale et 'Origin/master' ont divergé, comment 'dériver' les branches '? et j'ai essayé de suivre les étapes, essayant à la fois de fusionner et de rebaser mon référentiel local.
$ git flow feature finish showFindLogs
Branches 'develop' and 'Origin/develop' have diverged.
And branch 'develop' may be fast-forwarded.
$ git merge Origin/develop
Already up-to-date.
$ git rebase Origin/develop
Current branch feature/showFindLogs is up to date.
$ git status
# On branch feature/showFindLogs
nothing to commit (working directory clean)
Comment puis-je m'en sortir? J'en ai fini avec la fonction git flow et je voudrais juste mettre mes modifications à la télécommande. Merci!
Ce qui se passe ici, c'est que la télécommande a reçu des mises à jour, et git-flow requiert que develop
et Origin/develop
pour être au même commit avant de fusionner la fonctionnalité. Cela permet d'éviter de mauvais conflits lors de la publication de la branche.
Pour résoudre ce problème, vous devez:
synchronisez votre develop
local avec Origin
: extrayez develop
et tirez de Origin
vers develop
(git checkout develop && git pull Origin
)
rebaser votre fonctionnalité sur develop
avec git flow feature rebase showFindLogs
. Vous pouvez avoir des conflits ici si vous n'avez pas de chance
vérifier qu'il ne casse rien
git flow feature finish showFindLogs
Assurez-vous que votre branche develop
n'est pas derrière Origin, vous devrez peut-être effectuer
git checkout develop
git pull
git checkout release/x.x.x
Et continuez le processus de sortie
vous pouvez également vouloir ((tant qu’il n’est pas officiellement pris en charge) corriger et) utiliser mon
git-flow feature finish -p
option
Vous pouvez récupérer à partir de $ Origin avant la fin de la fonction avec cette commande:
git flow feature finish -F <name>
( documents )
Pour quiconque recherche cette erreur sur Google et utilise Hub-Flow - il suffit de faire:
git hf update