U heeft uw samenvoeging niet voltooid (MERGE_HEAD bestaat)

Ik heb een branch gemaakt met de naam ‘f’ en heb een checkout gedaan om te masteren. Toen ik het git pullcommando probeerde, kreeg ik dit bericht:

You have not concluded your merge (MERGE_HEAD exists).
Please, commit your changes before you can merge.

Toen ik de git statusprobeerde, kreeg ik het volgende:

On branch master
# Your branch and 'origin/master' have diverged,
# and have 1 and 13 different commit(s) each, respectively.
#
# Changes to be committed:
#
#   modified:   app/assets/images/backward.png
#   modified:   app/assets/images/forward.png
#   new file:   app/assets/images/index_background.jpg
#   new file:   app/assets/images/loading.gif
#   modified:   app/assets/images/pause.png
#   modified:   app/assets/images/play.png
#   new file:   app/assets/javascripts/jquery-ui-bootstrap.js
#   new file:   app/assets/stylesheets/jquery-ui-bootstrap.css
#   modified:   app/controllers/friends_controller.rb
#   modified:   app/controllers/plays_controller.rb
#   modified:   app/mailers/invite_friends_mailer.rb
#   modified:   app/mailers/send_plays_mailer.rb
#   modified:   app/mailers/shot_chart_mailer.rb
#   modified:   app/views/friends/show_plays.html.erb
#   modified:   app/views/layouts/application.html.erb
#   modified:   app/views/plays/_inbox_table.html.erb
#   modified:   app/views/plays/show.html.erb
#   modified:   app/views/welcome/contact_form.html.erb
#   modified:   app/views/welcome/index.html.erb
#   modified:   log/development.log
#   modified:   log/restclient.log
#   new file:   tmp/cache/assets/C1A/C00/sprockets%2Fb7901e0813446f810e560158a1a97066
#   modified:   tmp/cache/assets/C64/930/sprockets%2F65aa1510292214f4fd1342280d521e4c
#   new file:   tmp/cache/assets/C73/C40/sprockets%2F96912377b93498914dd04bc69fa98585
#   new file:   tmp/cache/assets/CA9/090/sprockets%2Fa71992733a432421e67e03ff1bd441d8
#   new file:   tmp/cache/assets/CCD/7E0/sprockets%2F47125c2ebd0e8b29b6511b7b961152a1
#   modified:   tmp/cache/assets/CD5/DD0/sprockets%2F59d317902de6e0f68689899259caff26
#   modified:   tmp/cache/assets/CE3/080/sprockets%2F5c3b516e854760f14eda2395c4ff2581
#   new file:   tmp/cache/assets/CED/B20/sprockets%2F423772fde44ab6f6f861639ee71444c4
#   new file:   tmp/cache/assets/D0C/E10/sprockets%2F8d1f4b30c6be13017565fe1b697156ce
#   new file:   tmp/cache/assets/D12/290/sprockets%2F93ae21f3cdd5e24444ae4651913fd875
#   new file:   tmp/cache/assets/D13/FC0/sprockets%2F57aad34b9d3c9e225205237dac9b1999
#   new file:   tmp/cache/assets/D1D/DE0/sprockets%2F5840ff4283f6545f472be8e10ce67bb8
#   new file:   tmp/cache/assets/D23/BD0/sprockets%2F439d5dedcc8c54560881edb9f0456819
#   new file:   tmp/cache/assets/D24/570/sprockets%2Fb449db428fc674796e18b7a419924afe
#   new file:   tmp/cache/assets/D28/480/sprockets%2F9aeec798a04544e478806ffe57e66a51
#   new file:   tmp/cache/assets/D3A/ED0/sprockets%2Fcd959cbf710b366c145747eb3c062bb4
#   new file:   tmp/cache/assets/D3C/060/sprockets%2F363ac7c9208d3bb5d7047f11c159d7ce
#   new file:   tmp/cache/assets/D48/D00/sprockets%2Fe23c97b8996e7b5567a3080c285aaccb
#   new file:   tmp/cache/assets/D6A/900/sprockets%2Fa5cece9476b21aa4d5f46911ca96c450
#   new file:   tmp/cache/assets/D6C/510/sprockets%2Fb086a020de3c258cb1c67dfc9c67d546
#   new file:   tmp/cache/assets/D70/F30/sprockets%2Facf9a6348722adf1ee7abbb695603078
#   new file:   tmp/cache/assets/DA3/4A0/sprockets%2F69c26d0a9ca8ce383e20897cefe05aa4
#   new file:   tmp/cache/assets/DA7/2F0/sprockets%2F61da396fb86c5ecd844a2d83ac759b4b
#   new file:   tmp/cache/assets/DB9/C80/sprockets%2F876fbfb9685b2b8ea476fa3c67ae498b
#   new file:   tmp/cache/assets/DBD/7A0/sprockets%2F3640ea84a1dfaf6f91a01d1d6fbe223d
#   new file:   tmp/cache/assets/DC1/8D0/sprockets%2Fe5ee1f1cfba2144ec00b1dcd6773e691
#   new file:   tmp/cache/assets/DCC/E60/sprockets%2Fd6a95f601456c93ff9a1bb70dea3dfc0
#   new file:   tmp/cache/assets/DF1/130/sprockets%2Fcda4825bb42c91e2d1f1ea7b2b958bda
#   new file:   tmp/cache/assets/E23/DE0/sprockets%2Fb1acc25c28cd1fabafbec99d169163d3
#   new file:   tmp/cache/assets/E23/FD0/sprockets%2Fea3dbcd1f341008ef8be67b1ccc5a9c5
#   modified:   tmp/cache/assets/E4E/AD0/sprockets%2Fb930f45cfe7c6a8d0efcada3013cc4bc
#   new file:   tmp/cache/assets/E63/7D0/sprockets%2F77de495a665c3ebcb47befecd07baae6
#   modified:   tmp/pids/server.pid
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   Coachbase/
#   log/development.log.orig
#   log/restclient.log.orig

Wat moet ik doen?


Antwoord 1, autoriteit 100%

Oké. Het probleem is dat je vorige pull niet automatisch kon worden samengevoegd en naar de conflictstatus ging. En het conflict was niet goed opgelost voor de volgende pull.

  1. Maak de samenvoeging ongedaan en trek opnieuw.

    Een samenvoeging ongedaan maken:

    git merge --abort[Sinds git versie 1.7.4]

    git reset --merge[vorige git-versies]

  2. Los het conflict op.

  3. Vergeet niet om de samenvoeging toe te voegen en vast te leggen.

  4. git pullzou nu goed moeten werken.


Antwoord 2, autoriteit 5%

Als je zeker weet dat je alle samenvoegconflicten al hebt opgelost:

rm -rf .git/MERGE*

En de fout zal verdwijnen.


Antwoord 3, autoriteit 4%

Ik denk dat het de moeite waard is om te vermelden dat er talloze scenario’s zijn waarin het bericht You have not concluded your merge (MERGE_HEAD exists)kan optreden, omdat waarschijnlijk veel mensen op deze pagina zijn beland na het zoeken naar bericht. De resolutie hangt af van hoe je daar bent gekomen.

git statusis altijd een handig startpunt.

Als je de inhoud al naar tevredenheid hebt samengevoegd en nog steeds dit bericht ontvangt, kan het zo simpel zijn als het doen

git add file
git commit

Maar nogmaals, het hangt echt van de situatie af. Het is een goed idee om de basis te begrijpen voordat je iets probeert (dezelfde link die Terence heeft gepost):
Git – Basis samenvoegconflicten


Antwoord 4, autoriteit 2%

Ik denk dat dit de juiste manier is:

git merge --abort
git fetch --all

Dan heb je twee opties:

git reset --hard origin/master

OF Als je op een andere tak zit:

git reset --hard origin/<branch_name>

Antwoord 5

Probeer

git reset --hard origin/trunk

‘trunk’ is de branch die ik probeer te bereiken.

Ik weet niet hoe of waarom dit werkt. Het had iets te maken met een commit die ik maakte die mijn pull-verzoeken dwong om een merge uit te voeren.


Antwoord 6

Ik heb conflicten opgelost en ook een commit gedaan, maar krijg nog steeds deze foutmelding op git push

Alle conflicten zijn opgelost, maar u voegt nog steeds samen.
(gebruik “git commit” om het samenvoegen te beëindigen)

Ik heb deze stappen uitgevoerd om de fout op te lossen:

rm -rf .git/MERGE*
git pull origin branch_name 
git push origin branch_name

Antwoord 7

Probeer een tijdelijk bestand te wijzigen. Zoals gewoon elke spatie verwijderen of spatie toevoegen en vervolgens dat bestand vastleggen en pushen.

git add ‘temporary_change_file’

git commit -m “git probleem oplossen”

git push origin development

En probeer dan git pull,

git pull origin development

Ik hoop dat dit je kan helpen.


Antwoord 8

Afbreken werkte niet voor mij. Dus ik moest continueen dit is wat voor mij werkte:

git merge --continue

Antwoord 9

Blokquote

Als je probeert om van een andere vertakking naar je vertakking te trekken. Als u deze fout ziet.

Eerst zou je git commit moeten proberen en dan een andere branch in de jouwe moeten trekken.

  1. “git add . “
  2. git commit
  3. Doe dan git pull uit de vereiste branch.

Antwoord 10

In mijn geval had ik een kersenpluk die een aantal samenvoegconflicten veroorzaakte, dus ik besluit de kersenpluk niet te voltooien. Ik heb al mijn wijzigingen weggegooid. Hierdoor kwam ik in een staat waarin ik de volgende foutmelding kreeg:

U heeft uw samenvoeging niet voltooid (MERGE_HEAD bestaat

Om het probleem op te lossen heb ik het volgende git-commando uitgevoerd waarmee het probleem is opgelost.

git cherry-pick --abort

Antwoord 11

Samenvoegwijzigingen doorvoeren loste mijn probleem op:

git commit -m "commit message"

Antwoord 12

We kunnen git merge --continuemet git versie 2.12 en hoger gebruiken om door te gaan met samenvoegen nadat het conflict is opgelost. Kan dit antwoord


Antwoord 13

De beste aanpak is om het samenvoegen ongedaan te maken en het samenvoegen opnieuw uit te voeren. Vaak krijg je de volgorde van dingen in de war. Probeer de conflicten op te lossen en jezelf in de war te brengen.

Dus maak het ongedaan en voeg opnieuw samen.

Zorg ervoor dat u de juiste diff-tools hebt ingesteld voor uw omgeving. Ik werk op een Mac en gebruik DIFFMERGE. Ik denk dat DIFFMERGE beschikbaar is voor alle omgevingen. Instructies vindt u hier: Installeer DIFF Merge op een MAC

Ik heb deze hulp bij het oplossen van mijn conflicten: Git Basic-Merge-Conflicten


Antwoord 14

gebruik eerst git pullom de repository samen te voegen, sla je wijziging op. Typ vervolgens git commit -m "your commit".


Antwoord 15

Ik heb het conflict opgelost en vervolgens een commit gedaan met -a optie.
Het werkte voor mij.


Antwoord 16

Dit werkte voor mij:

git log
`git reset --hard <089810b5be5e907ad9e3b01f>`
git pull
git status

Other episodes