බැඳීමක් අවලංගු කිරීම එය ක්රියාත්මක වන්නේ කෙසේදැයි ඔබ නොදන්නේ නම් එය ටිකක් බියකරු ය. ඔබ තේරුම් ගන්නේ නම් එය ඇත්තෙන්ම පුදුම සහගතය.
ඔබට මෙය ඇති බව පවසන්න, එහිදී C යනු ඔබේ HEAD වන අතර (F) ඔබේ ලිපිගොනු වල තත්වය වේ.
(F)
A-B-C
↑
master
ඔබට නියුක්ට් සී කිරීමට අවශ්ය වන අතර එය නැවත කිසිදිනෙක නොදකින අතර දේශීයව වෙනස් කරන ලද ලිපිගොනු වල සියලුම වෙනස්කම් නැති කර ගනී . ඔබ මෙය කරන්නේ:
git reset --hard HEAD~1
ප්රති result ලය:
(F)
A-B
↑
master
දැන් B යනු HEAD ය. ඔබ භාවිතා කළ නිසා --hard
, ඔබගේ ලිපිගොනු B හි ඔවුන්ගේ තත්වයට යලි සකසනු ලැබේ.
අහ්, නමුත් සී සිදු කිරීම ව්යසනයක් නොවේ යැයි සිතමු, නමුත් ටිකක් .තින්. ඔබට කැපවීම අහෝසි කිරීමට අවශ්ය නමුත් වඩා හොඳ කැපවීමක් කිරීමට පෙර ඔබේ වෙනස්කම් ටිකක් සංස්කරණය කිරීම සඳහා තබා ගන්න . C වෙතින් ඔබේ හිස ලෙස නැවත මෙතැන් සිට ආරම්භ වේ:
(F)
A-B-C
↑
master
ඔබට මෙය කළ හැකිය --hard
:
git reset HEAD~1
මෙම අවස්ථාවේ දී ප්රති result ලය:
(F)
A-B-C
↑
master
මෙම අවස්ථා දෙකෙහිම, HEAD යනු නවතම කැපවීම පිළිබඳ දර්ශකයක් පමණි. ඔබ එය කරන විට git reset HEAD~1
, ඔබ ගිට්ට කියනවා හෙඩ් පොයින්ටරය එක කැපවීමකින් පසුපසට ගෙන යන්න. නමුත් (ඔබ භාවිතා නොකරන්නේ නම් --hard
) ඔබ ඔබේ ලිපිගොනු එලෙසම තබයි. දැන් git status
ඔබ සී වෙත පරීක්ෂා කළ වෙනස්කම් පෙන්වයි. ඔබට කිසිවක් අහිමි වී නැත!
සැහැල්ලු ස්පර්ශය සඳහා, ඔබට ඔබගේ බැඳීම අහෝසි කළ හැකි නමුත් ඔබේ ලිපිගොනු සහ දර්ශකය තබන්න :
git reset --soft HEAD~1
මෙය ඔබගේ ලිපිගොනු තනිවම තබනවා පමණක් නොව, එය ඔබගේ දර්ශකය පවා තනි කරයි. ඔබ එසේ කළ විට git status
, පෙර මෙන් එකම ලිපිගොනු දර්ශකයේ ඇති බව ඔබට පෙනෙනු ඇත. ඇත්ත වශයෙන්ම, මෙම git commit
විධානයෙන් පසු, ඔබට කළ හැකි අතර ඔබ කළ කැපවීමම නැවත සිදු කරනු ඇත.
තවත් එක් දෙයක්: පළමු උදාහරණයේ දී මෙන් ඔබ බැඳීමක් විනාශ කරයි යැයි සිතමු , නමුත් ඔබට එය අවශ්ය බව සොයා ගන්න ? දැඩි වාසනාව නේද?
නෑ, එය නැවත ලබා ගැනීමට තවමත් ක්රමයක් තිබේ. ටයිප් කරන්න git reflog
, ඔබ එහා මෙහා ගෙන ගිය (අර්ධ වශයෙන්) ෂැස් (එනම් හැෂ්) ලැයිස්තුවක් ඔබට පෙනෙනු ඇත. ඔබ විනාශ කළ කැපවීම සොයාගෙන මෙය කරන්න:
git checkout -b someNewBranchName shaYouDestroyed
ඔබ දැන් එම කැපවීම නැවත නැඟිටුවනු ඇත. දින 90 ක් පමණ Git හි කොමිස් විනාශ නොවනු ඇත, එබැවින් ඔබට සාමාන්යයෙන් ආපසු ගොස් ඔබ ඉවත් කිරීමට අදහස් නොකළ එකක් බේරා ගත හැකිය.