2012-04-17 14 views
41

Ich benutze die Git-Flow-Tools und ich habe mich in ein kleines Problem. Meine git Zweige sind auseinander gegangen. Ich habe gelesen master branch and 'origin/master' have diverged, how to 'undiverge' branches'? und habe versucht, die Schritte zu folgen, beide versuchen, mein lokales Repository zusammenzuführen und neu zu erstellen.git flow Zweige haben sich auseinandergelaufen

Wie kann ich hier rauskommen? Ich bin fertig mit der git flow-Funktion und möchte meine Änderungen nur auf die Fernbedienung übertragen. Vielen Dank!

Antwort

86

Was passiert hier ist, dass die remote Updates erhalten hat, und git-flow erfordert, dass develop und origin/develop auf dem gleichen Commit vor dem Zusammenführen der Feature sein. Dies verhindert böse Konflikte beim Veröffentlichen der Verzweigung.

Um dies zu lösen, müssen Sie:

  1. Synchronisierung Ihrer lokalen develop mit origin: Kasse develop und vorsichtig vom origin zu develop (git checkout develop && git pull origin)

  2. Ihre Funktion rebase auf develop mit git flow feature rebase showFindLogs . Sie haben Konflikte hier, wenn Sie Pech haben

  3. prüfen, ob es nicht etwas

  4. git flow feature finish showFindLogs

+3

Vielen Dank! –

+2

Wird nicht 'git checkout entwickeln && git pull origin' eine 'Merging origin/entwickeln in develop' Commit Nachricht erstellen? Wäre nicht "git checkout" && git rebase origin "(auch bekannt als" git pull --rebase origin ") in dieser Situation besser? – PeterB

+0

@PeterB: ja in der Tat, wenn "entwickeln" und "Ursprung/Entwicklung" auseinander gegangen sind, aber es ist keine gemeinsame Situation – CharlesB

0

Sie sind von $ ORIGIN vor dem Fertig Feature mit diesem Befehl abrufen kann:

git flow feature finish -F <name> 

(docs)

3

Stellen Sie sicher, dass develop Zweig ist nicht hinter Herkunft, vielleicht müssen Sie durchführen

git pull

git checkout release/x.x.x

Und weiterhin den Freigabeprozess

0

Denn wer diesen Fehler googeln, und mit Hub-Flow- - gerade tun:

git hf update 
0

Für dieses Problem lösen Sie meine Implementierung verwenden können of git flow, basierend auf @ childno͡.de Lösung.

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

Um git Flow ausführen in der Konsole zu installieren:

git clone https://github.com/wyhasany/gitflow-avh/;cd gitflow-avh/;git checkout feature/force_merge;git pull;sudo make install