les branches de flux git ont divergé

j'utilise les outils git flow et je me suis mis dans un petit problème. Mes branches ont divergé. J'ai lu master branch et 'origin/master' ont divergé, comment 'défaire' branches'? et ont essayé de suivre les étapes, en essayant à la fois de fusionner et de reformater mon dépôt 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 j'aimerais que mes modifications soient sur la télécommande. Merci!

47
demandé sur Community 2012-04-17 22:48:20

6 réponses

ce qui se passe ici est que la télécommande a reçu des mises à jour, et git-flow exige que develop et origin/develop soient à la même propagation avant de fusionner la fonctionnalité. Ceci est pour prévenir les mauvais conflits lors de la publication de la branche.

pour résoudre ceci, vous devez:

  1. synchroniser votre local develop avec origin : la caisse develop , et tirer à partir de origin à develop ( git checkout develop && git pull origin )

  2. rebase votre article sur develop avec git flow feature rebase showFindLogs . Vous pouvez avoir des conflits ici si vous êtes malchanceux

  3. Vérifiez qu'il ne casse rien

  4. git flow feature finish showFindLogs

102
répondu CharlesB 2012-04-17 21:23:43

assurez-vous que votre develop branche n'est pas derrière l'origine, peut-être que vous avez besoin d'effectuer

git checkout develop

git pull

git checkout release/x.x.x

Et de continuer le processus de libération

4
répondu Bruno Peres 2016-05-31 18:37:43

vous pourriez aussi vouloir ((tant qu'il n'est pas officiellement supporté) patch et) utiliser mon

git-flow feature finish -p option

https://github.com/nvie/gitflow/pull/253

2
répondu childno͡.de 2012-09-06 07:50:42

vous pouvez aller chercher à partir de $ORIGIN avant de terminer la fonctionnalité avec cette commande:

git flow feature finish -F <name>

( docs )

0
répondu Manolo 2015-07-07 08:42:03

pour quiconque googler cette erreur, et en utilisant Hub-Flow - juste faire:

git hf update
0
répondu Shoham 2016-06-29 16:23:08

pour résoudre ce problème, vous pouvez utiliser mon implémentation de git flow, basé sur @childno.de solution.

git flow feature/hotfix/release/bugfix  -e finish <name>

pour installer git flow exécuter en console:

git clone https://github.com/wyhasany/gitflow-avh/;cd gitflow-avh/;git checkout feature/force_merge;git pull;sudo make install
-1
répondu Michał Rowicki 2017-01-17 19:09:53