マージを完了していません(MERGE_HEADが存在します)


1036

私は「f」というブランチを作成し、マスターにチェックアウトしました。git pullコマンドを試したところ、次のメッセージが表示されました。

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

を試したところgit status、次のことがわかりました。

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

私は何をすべきか?

回答:


1918

OK。問題は、以前のプルが自動的にマージされず、競合状態になったことです。そして、次のプルの前に、衝突は適切に解決されませんでした。

  1. マージを元に戻し、もう一度プルします。

    マージを元に戻すには:

    git merge --abort [gitバージョン1.7.4以降]

    git reset --merge [以前のgitバージョン]

  2. 競合を解決します。

  3. マージを追加してコミットすることを忘れないでください。

  4. git pull これで問題なく動作するはずです。


2
私は試しましたが、ファイルで競合が発生しました(プル時)自動マージapp / views / layouts / application.html.erb自動マージlog / development.log CONFLICT(コンテンツ):log / development.logでマージの競合自動マージlog / restclient.log CONFLICT(コンテンツ):log / restclient.logのマージの競合自動マージが失敗しました。競合を修正してから結果をコミットします。指定したローカルファイルを修正してから、 'git pull'を実行しました。マージされていないファイルがあるため、プルはできません。作業ツリーで修正してから、必要に応じて「git add / rm <file>」を使用して解像度をマークするか、「git commit -a」を使用してください。
Ankit Suri 2012

1
@AnkitSuri、競合を修正した後、ステージングしてコミットしましたか?
Karthik Bose

1
私はそれを試しました、そしてそれは私が再び流れを始めるのを助けます。元に戻した後、私は「git mergetool」を試しました。マージツールに直接関連付けます。
CoDe 2013

4
機能しません:[env]$ git merge --abort fatal: You have not concluded your merge (MERGE_HEAD exists). Please, commit your changes before you can merge.
user1429980

1
@KarthikBose、それは実際に動作してしまいました。SSHで作業していたため、新しいセッションを開始してを実行する必要がありましたgit status
user1429980 2014年

97

すべてのマージの競合がすでに解決されていると確信している場合:

rm -rf .git/MERGE*

そしてエラーは消えます。


2
MERGE_HEADを削除した場合、結果のコミットには親が1つしかないので、マージされたブランチの履歴はありませんか?
Jason Goemaat

2
これが私が欲しかったもの
ラディティア・グメイ

1
私の場合、@ JasonGoemaatは、まだ受け入れられていない複数のPRを一時的にマージしています。機能ブランチでこれらのマージをコミットする予定はありません。開発中に必要になります。
アンディ

私はすでに衝突を解決しましたが、それでもこのエラーが発生していました。だからコマンドは私のために働いた。
Sibgha

これは厄介なマージ競合ループから私を救いました。
スレッジ

68

メッセージYou have not concluded your merge (MERGE_HEAD exists)を検索した後にこのページにたどり着く人が多いので、メッセージが発生する可能性のあるシナリオが数多くあることは言及する価値があると思います。解決方法は、そこにたどり着いた方法によって異なります。

git status 常に便利な出発点です。

満足のいく内容にすでにマージしていても、このメッセージが表示される場合は、次のように簡単です。

git add file
git commit

しかし、再び、それは本当に状況に依存します。何かを試みる前に基本を理解することをお勧めします(Terenceが投稿した同じリンク): Git-基本的なマージの競合


より簡単なタイプの問題を抱えている私たちのために、これを尋ねてくれてありがとう。「Gitステータス」は、私のような初心者にとって必要なものでした。マージされたマージを修正する最後のステップは、単純なコマンド「git commit」でした。
ダナ

17

私はこれが正しい方法だと思います:

git merge --abort

git fetch --all

次に、2つのオプションがあります。

git reset --hard origin/master

または他のブランチにいる場合:

git reset --hard origin/<branch_name>

2
gitマージのみ
luky

8

競合を解決し、コミットしましたが、このエラーメッセージが表示されます git push

すべての競合は修正されましたが、まだマージしています。
(マージを完了するには「git commit」を使用してください)

エラーを解決するために次の手順を実行しました。

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

push最後には何を達成しますか?
Mark Storer

6

試す

git reset --hard origin/trunk

「トランク」は、私が到達しようとしているブランチです。

これがどのようにまたはなぜ機能するのかわかりません。それは私が行ったいくつかのコミットと関係があり、プルリクエストにマージを強制することでした。


5

一時ファイルを変更してみてください。スペースを削除するかスペースを追加して、そのファイルをコミットしてプッシュするだけです。

git add 'temporary_change_file'

git commit -m "git issue resolving"

git push origin開発

そしてgit pullを試してください。

git pull originを開発

これがお役に立てば幸いです。


4

ブロッククォート

別のブランチからブランチにプルしようとしている場合。このエラーが表示された場合。

まず、git commitを実行してから、別のブランチを自分のブランチにプルします。

  1. 「git add。」
  2. git commit
  3. 次に、必要なブランチからgit pullを実行します。

3

私の場合、多数のマージ競合が発生するチェリーピックがあったため、チェリーピックを完了しないことにしました。すべての変更を破棄しました。そうすると、次のエラーが表示される状態になります。

マージを完了していません(MERGE_HEADが存在します)

問題を修正するために、問題を修正する次のgitコマンドを実行しました。

git cherry-pick --abort

2

最善の方法は、マージを取り消して再度マージを実行することです。多くの場合、あなたは物事の順序をめちゃくちゃにしてしまいます。衝突を修正してみて、混乱に陥ってください。

元に戻し、再度マージしてください。

ご使用の環境に適切なdiffツールがセットアップされていることを確認してください。Macを使用していて、DIFFMERGEを使用しています。DIFFMERGEはすべての環境で使用できると思います。手順はここにあります: MACへのDIFF Mergeのインストール

競合を解決するのに役立ちます:Git Basic-Merge-Conflicts


1

まず、git pullリポジトリのマージに使用して変更を保存し、次に再入力しgit commit -m "your commit"ます。


0

コミット変更をコミットすると問題が解決しました:

git commit -m "commit message"

-12

これは私のために働きました:

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

3
まず、作業ディレクトリの変更をすべて削除します。また、ハードコードされたバージョンは役に立ちません。おそらくHEAD ^のようなものが良いでしょう。
Entomo

@ Plus1これはまさに私が必要とするものです。間違ったローカルコミットを削除し、変更されたソースコードに関して変更を適用します。回答ありがとうございます!
18年

それは私の場合問題を引き起こしました
Shafiq
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.