ඔබගේ ඒකාබද්ධ කිරීම ඔබ අවසන් කර නැත (MERGE_HEAD පවතී)


1074

මම '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

මම කළ යුත්තේ කුමක් ද?

Answers:


1973

හරි. ගැටළුව වන්නේ ඔබගේ පෙර ඇදීම ස්වයංක්‍රීයව ඒකාබද්ධ වීමට අපොහොසත් වී ගැටුම් තත්වයට යාමයි. ඊළඟ අදින්නට පෙර ගැටුම නිසි ලෙස විසඳී නැත.

  1. ඒකාබද්ධ කිරීම අහෝසි කර නැවත අදින්න.

    ඒකාබද්ධ කිරීම අහෝසි කිරීමට:

    git merge --abort [Git අනුවාදය 1.7.4 සිට]

    git reset --merge [පෙර git අනුවාදයන්]

  2. ගැටුම විසඳන්න.

  3. ඒකාබද්ධ කිරීම එකතු කිරීමට හා කැප කිරීමට අමතක නොකරන්න.

  4. git pull දැන් හොඳින් වැඩ කළ යුතුයි.


2
මම ස්වයංක්‍රීයව ඒකාබද්ධ කිරීමේ යෙදුම / දසුන් / පිරිසැලසුම් / application.html.erb ස්වයංක්‍රීයව ඒකාබද්ධ කිරීමේ ලොග් / සංවර්ධන log / restclient.log CONFLICT (අන්තර්ගතය): ලොග් / restclient.log හි ගැටුම් ඒකාබද්ධ කිරීම ස්වයංක්‍රීය ඒකාබද්ධ කිරීම අසාර්ථක විය; ගැටුම් නිරාකරණය කර ප්‍රති .ලය ලබා දෙන්න. මම නිශ්චිතව දක්වා ඇති දේශීය ලිපිගොනු සවි කර ඇති අතර, පසුව මම උත්සාහ කළේ 'ගිට් අදින්න' ඔබ සතුව නැති ගොනු ඇති බැවින් අදින්න නොහැකි ය. කරුණාකර, ඒවා වැඩ ගස තුළ සවි කර, පසුව විභේදනය සලකුණු කිරීමට සුදුසු පරිදි 'git add / rm <file>' භාවිතා කරන්න, නැතහොත් 'git commit -a' භාවිතා කරන්න.
අන්කිත් සූරි

1
N ඇන්කිට්සුරි, ගැටුම් නිරාකරණය කිරීමෙන් පසුව, ඔබ ඒවා වේදිකා ගත කළාද?
කාර්තික් බෝස්

1
මම එය අත්හදා බැලූ අතර එය නැවත ගලා ඒමට උපකාරී වේ. ආපසු හැරී ගිය පසු මම "git mergetool" උත්සාහ කළෙමි. එය ඒකාබද්ධ කිරීමේ මෙවලම සමඟ කෙලින්ම සම්බන්ධ වේ.
CoDe

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
Arth කාර්තික්බෝස්, එය ඇත්ත වශයෙන්ම අවසන් විය. මම එස්එස්එච් හි වැඩ කරමින් සිටි බැවින්, මට නව සැසියක් ආරම්භ කර අ git status.
user1429980

101

සියලු ඒකාබද්ධ කිරීමේ ගැටුම් ඔබ දැනටමත් විසඳා ඇති බව ඔබට විශ්වාස නම්:

rm -rf .git/MERGE*

දෝෂය අතුරුදහන් වනු ඇත.


2
ඔබ MERGE_HEAD ඉවත් කළහොත්, එහි ප්‍රති commit ලයක් වශයෙන් එක් දෙමාපියෙකු පමණක් නොසිටින බැවින් ඒකාබද්ධ කළ ශාඛාවේ ඉතිහාසය ඔබට නොලැබේ ද?
ජේසන් ගොමාත්

2
මට අවශ්‍ය දේ මෙයයි
raditya gumay

1
Ason ජේසන් ගොමාට් මගේ නඩුවේ මම තාවකාලිකව තවමත් පිළිගෙන නැති බහු PR වල ඒකාබද්ධ කරමි. විශේෂාංග ශාඛාව තුළ එම ඒකාබද්ධ කිරීම් සිදු කිරීමට මම අදහස් නොකරමි, සංවර්ධනයේදී මට ඒවා අවශ්‍ය වේ.
ඇන්ඩි

මම දැනටමත් මගේ ගැටුම් නිරාකරණය කර ඇති අතර තවමත් මෙම දෝෂය ලැබෙමින් පවතී. ඉතින් අණ මට වැඩ කළා.
සිබ්ගා

මෙය මාව ඒකාබද්ධ කිරීමේ ගැටුම් වළල්ලකින් බේරා ගත්තා.
ස්ලෙජ්

70

පණිවුඩය You have not concluded your merge (MERGE_HEAD exists)සිදුවිය හැකි අවස්ථා රාශියක් ඇති බව සඳහන් කිරීම වටී යැයි මම සිතමි , මන්ද බොහෝ අය මෙම පණිවිඩය සෙවීමෙන් පසු මෙම පිටුවට පැමිණ ඇති බැවිනි. යෝජනාව රඳා පවතින්නේ ඔබ එහි ගිය ආකාරය මත ය.

git status සැමවිටම ප්‍රයෝජනවත් ආරම්භක ස්ථානයකි.

ඔබ දැනටමත් අන්තර්ගතය ඔබගේ තෘප්තියට ඒකාබද්ධ කර තවමත් මෙම පණිවිඩය ලබා ගන්නේ නම්, එය සිදු කිරීම තරම් සරල විය හැකිය

git add file
git commit

නමුත් නැවතත්, එය ඇත්ත වශයෙන්ම තත්වය මත රඳා පවතී. ඕනෑම දෙයක් උත්සාහ කිරීමට පෙර මූලික කරුණු අවබෝධ කර ගැනීම හොඳ අදහසකි (ටෙරන්ස් පළ කළ එකම සබැඳිය): Git - මූලික ඒකාබද්ධ කිරීමේ ගැටුම්


මෙය ඇසීමට ස්තූතියි, සරල ආකාරයේ ගැටලුවක් ඇති අප සඳහා. "Git status" යනු මා වැනි නවකයකුට අවශ්‍ය වූ දෙයයි. මතක් කර දිය යුත්තේ ගැටුම්කාරී ඒකාබද්ධ කිරීමක් නිවැරදි කිරීමේ අවසාන පියවර "git commit" යන සරල විධානය බවයි.
ඩනා

19

මම හිතන්නේ මෙය නිවැරදි මාර්ගයයි:

git merge --abort

git fetch --all

එවිට, ඔබට විකල්ප දෙකක් තිබේ:

git reset --hard origin/master

හෝ ඔබ වෙනත් ශාඛාවක සිටී නම්:

git reset --hard origin/<branch_name>

2
git merge --abort පමණක් ක්‍රියාත්මක විය && git pull
luky

8

මම ගැටුම් නිරාකරණය කර ඇති අතර කැපවී සිටින නමුත් තවමත් මෙම දෝෂ පණිවිඩය ලබා ගනිමි git push

සියලුම ගැටුම් නිරාකරණය වී ඇති නමුත් ඔබ තවමත් ඒකාබද්ධ වෙමින් පවතී.
(ඒකාබද්ධ කිරීම නිගමනය කිරීමට "git commit" භාවිතා කරන්න)

දෝෂය විසඳීම සඳහා මම මෙම පියවරයන් කළෙමි:

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

මොකක්ද මේ කරන්නේ pushඅවසානයේදී ඉටු?
මාර්ක් ස්ටෝර්

6

උත්සාහ කරන්න

git reset --hard origin/trunk

'කඳ' යනු මා ලබා ගැනීමට උත්සාහ කරන ශාඛාවයි.

මෙය ක්‍රියාත්මක වන්නේ කෙසේද හෝ ඇයිදැයි මම නොදනිමි. එයට මා කළ යම් කැපවීමක් සමඟ යම් සම්බන්ධයක් ඇති අතර එය ඒකාබද්ධ කිරීමක් කිරීමට මගේ ඉල්ලීම් වලට බල කෙරුනි.


5

ඕනෑම තාවකාලික ගොනුවක් වෙනස් කිරීමට උත්සාහ කරන්න. හරියට ඕනෑම ඉඩක් ඉවත් කරන්න හෝ ඉඩ එකතු කර එම ගොනුව කැප කර තල්ලු කරන්න.

'තාවකාලික_ හුවමාරු_ ගොනුව' එක් කරන්න

git commit -m "git ගැටළු විසඳීම"

git push සම්භවය වර්ධනය වේ

ඊට පස්සෙ git pull උත්සාහ කරන්න,

git pull සම්භවය වර්ධනය වේ

මෙය ඔබට උපකාරී වේ යැයි සිතමි.


4

බ්ලොක්කෝට්

ඔබ වෙනත් ශාඛාවකින් ඔබේ ශාඛාවට ඇද ගැනීමට උත්සාහ කරන්නේ නම්. ඔබ මෙම දෝෂය දකින්නේ නම්.

පළමුවෙන්ම, ඔබ git commit කිරීමට උත්සාහ කළ යුතු අතර පසුව තවත් ශාඛාවක් ඔබ වෙතට ඇද ගන්න.

  1. "git add."
  2. git commit
  3. ඉන්පසු අවශ්‍ය ශාඛාවෙන් git අදින්න.

3

මගේ නඩුවේදී මට චෙරි පික් එකක් තිබූ අතර එය ඒකාබද්ධ කිරීමේ ගැටුම් ගණනාවක් ඇති කරයි, එබැවින් මම චෙරි පික් සම්පූර්ණ නොකිරීමට තීරණය කරමි. මගේ සියලු වෙනස්කම් මම ඉවත දැමුවෙමි. එසේ කිරීමෙන් මට පහත සඳහන් දෝෂය ඇති වූ තත්වයකට මා පත් විය:

ඔබගේ ඒකාබද්ධ කිරීම ඔබ අවසන් කර නැත (MERGE_HEAD පවතී

ගැටළුව විසඳීම සඳහා මම පහත දැක්වෙන git විධානය ක්‍රියාත්මක කළෙමි.

git cherry-pick --abort

2

හොඳම ප්‍රවේශය වන්නේ ඒකාබද්ධ කිරීම අහෝසි කර නැවත ඒකාබද්ධ කිරීම සිදු කිරීමයි. බොහෝ විට ඔබ අවුල් සහගත දේවල අනුපිළිවෙල ලබා ගනී. උත්සාහ කර ගැටුම් නිරාකරණය කර ඔබම අවුල් ජාලයකට ඇද දමන්න.

එබැවින් එය අහෝසි කර නැවත ඒකාබද්ධ කරන්න.

ඔබේ පරිසරය සඳහා සුදුසු වෙනස මෙවලම් සැකසුම ඔබ සතුව ඇති බවට වග බලා ගන්න. මම මැක් එකක සිටින අතර DIFFMERGE භාවිතා කරමි. මම හිතන්නේ සියලු පරිසරයන් සඳහා DIFFMERGE ලබා ගත හැකිය. උපදෙස් මෙහි ඇත: MAC මත DIFF ඒකාබද්ධ කිරීම ස්ථාපනය කරන්න

මගේ ගැටුම් නිරාකරණය කිරීමට මට මෙය උපකාරී වේ: 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
පළමුවෙන්ම, මෙය සියලු වැඩ කරන නාමාවලි වෙනස්කම් මකා දමනු ඇත. දෘ c කේත කරන ලද අනුවාදය ප්‍රයෝජනවත් නොවේ, සමහර විට HEAD like වැනි දෙයක් වඩා හොඳය.
එන්ටොමෝ

@ ප්ලස් 1 මට අවශ්‍ය වන්නේ මෙයයි - මගේ වැරදි දේශීය කොමිස් ඉවත් කර වෙනස් කළ ප්‍රභව කේතයට අදාළ වෙනස්කම් යොදන්න. ඔබගේ පිළිතුරට ස්තූතියි!
amuliar

එය මගේ නඩුවේ ගැටළුවක් ඇති කළේය
ෂෆික්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.