git - আমি কিভাবে গিট সবচেয়ে সাম্প্রতিক Commits পূর্বাবস্থায় ফেরাতে পারি?




git-commit git-reset git-revert (25)

"সর্বশেষ কমিটিতে কাজ গাছ পুনরায় সেট করুন"

git reset --hard HEAD^ 

"কাজের গাছ থেকে পরিষ্কার অজানা ফাইল"

git clean    

দেখুন - গিট দ্রুত রেফারেন্স

দ্রষ্টব্য: এই কমান্ডটি আপনার পূর্ববর্তী কমিটি মুছে ফেলবে, তাই সাবধানতার সাথে ব্যবহার করুন! git reset --hard - git reset --hard নিরাপদ -

আমি দুর্ঘটনাক্রমে ভুল ফাইলটি করেছি Git , কিন্তু আমি এখনও সার্ভারে কমিট ধাক্কা না।

আমি কিভাবে স্থানীয় রিপোজিটরি থেকে এগুলি পূর্বাবস্থায় ফিরিয়ে আনতে পারি?


জিনিসগুলি পেতে চান এমন ফাইল যুক্ত করুন / অপসারণ করুন:

git rm classdir
git add sourcedir

তারপর কমিটি সংশোধন:

git commit --amend

পূর্ববর্তী, ত্রুটিপূর্ণ কমিটি নতুন সূচক রাষ্ট্র প্রতিফলিত করার জন্য সম্পাদিত হবে - অন্য কথায়, এটি এমন হবে যেন আপনি প্রথম স্থানে ভুল করে না।

আপনি যদি ধাক্কা না দিয়ে থাকেন তবে শুধুমাত্র এটিই করা উচিত। যদি আপনি ধাক্কা দিয়ে থাকেন, তবে আপনাকে অবশ্যই একটি ফিক্স করতে হবে।


git rm yourfiles/*.class
git commit -a -m "deleted all class files in folder 'yourfiles'"

অথবা

git reset --hard HEAD~1

সতর্কতা: উপরের কমান্ডটি স্থায়ীভাবে .java ফাইলগুলিতে (এবং অন্য যে কোনও ফাইল) পরিবর্তনগুলি মুছে ফেলবে যা আপনি করতে চান।

HEAD-1 তে hard reset HEAD-1 আপনার ভুল প্রতিবেদনের আগে কমিটির অবস্থানে আপনার কাজ করা কপিটি সেট করবে।


যদি আপনি সম্পূর্ণরূপে স্থানীয় কমিটি পূর্বাবস্থায় ফিরিয়ে আনতে চান তবে আপনি যা যা পরিবর্তন করেছেন তা কমিটিতে করেছেন, এবং যদি আপনি এটি সম্পর্কে কিছু না চিনেন তবে নিচের কমান্ডটি ব্যবহার করুন।

git reset --hard HEAD^1

(এই কমান্ডটি আপনার সমগ্র কমিটি উপেক্ষা করবে এবং আপনার স্থানীয় ক্রিয়াকলাপের গাছ থেকে আপনার পরিবর্তন সম্পূর্ণরূপে হারিয়ে যাবে)। আপনি যদি আপনার কমিটি পূর্বাবস্থায় ফিরিয়ে আনতে চান, তবে আপনি স্টেজিং এরিয়াতে আপনার পরিবর্তনগুলি চান ( git add পরে git add আগে) তাহলে নিম্নোক্ত কমান্ডটি করুন।

git reset --soft HEAD^1

এখন আপনার প্রতিশ্রুতিবদ্ধ ফাইল স্টেজিং এলাকায় আসে। ধরুন যদি আপনি ফাইলগুলি আপগ্রেড করতে চান তবে আপনাকে কিছু ভুল সামগ্রী সম্পাদনা করতে হবে, তাহলে নিম্নলিখিত কমান্ডটি ব্যবহার করুন

git reset HEAD

এখন স্ট্যাজড এলাকা থেকে অস্থিতিশীল এলাকায় আসতে প্রতিশ্রুতিবদ্ধ ফাইল। এখন ফাইলগুলি সম্পাদনা করার জন্য প্রস্তুত, তাই আপনি যা পরিবর্তন করেন, আপনি সম্পাদনা করতে এবং এটি যুক্ত করতে এবং একটি নতুন / নতুন কমিটি করতে চান।

More


আমি আমাদের শেয়ার্ড রিপোজিটরিতে সর্বশেষ 5 টি কাজ পূর্বাবস্থায় ফিরিয়ে আনতে চেয়েছিলাম। আমি পুনর্বিবেচনা চেয়েছিলেন যে সংশোধন আইডি লাগছিল। তারপর আমি নিম্নলিখিত টাইপ।

prompt> git reset --hard 5a7404742c85
HEAD is now at 5a74047 Added one more page to catalogue
prompt> git push origin master --force
Total 0 (delta 0), reused 0 (delta 0)
remote: bb/acl: neoneye is allowed. accepted payload.
To [email protected]:thecompany/prometheus.git
 + 09a6480...5a74047 master -> master (forced update)
prompt>

শুধু git ব্যবহার করে নীচের কমান্ডটি এটি পুনরায় সেট করুন:

git reset --soft HEAD~1

ব্যাখ্যা করুন: কোন git reset করবেন, এটি মূলত কোনও --soft ফিরে যেতে চান যা আপনি ফিরে যেতে চান, তবে আপনি যদি --soft কী দিয়ে এটি সংযুক্ত করেন তবে এটি ফিরে যাবে, তবে আপনার ফাইলগুলিতে পরিবর্তনগুলি রাখুন, তাই আপনি মঞ্চে ফিরে যান যা ফাইলটি যোগ করা হয়েছে, HEAD শাখার প্রধান এবং যদি আপনি ~1 (এই ক্ষেত্রে আপনি HEAD^ ব্যবহার করেন) সাথে একত্রিত হন, এটি আপনার যা চায় তা কেবল HEAD^ ফিরে আসবে। ..

আমি আপনার জন্য আরো বিশদে নীচের ছবিতে পদক্ষেপগুলি তৈরি করেছি, বাস্তব পরিস্থিতিতে এবং কোড সম্পাদন করা সমস্ত পদক্ষেপ সহ:


প্রথম রান:

git reflog

এটি আপনাকে আপনার সংগ্রহস্থলের উপর সঞ্চালিত সমস্ত সম্ভাব্য কর্ম দেখাবে, উদাহরণস্বরূপ, কমিট, মার্জ, পুল, ইত্যাদি।

তারপর করবেন:

git reset --hard ActionIdFromRefLog

যদি আপনি শেষ কমিটিতে ফাইলগুলি সরাতে চান তবে আপনি এটি ব্যবহার করতে পারেন:

git reset --hard HEAD~1

এবং যদি শেষ কমিটিতে ফাইলগুলির প্রয়োজন হয় তবে আপনি এটি ব্যবহার করতে পারেন:

git reset --soft HEAD~1

দুটি প্রধান পরিস্থিতিতে আছে

আপনি এখনো কমিট ধাক্কা না

সমস্যাটি যদি অতিরিক্ত ফাইল হয় তবে আপনি (এবং আপনি সেগুলি রিপোজিটোরিতে চান না), তবে আপনি git rm ব্যবহার করে তাদের অপসারণ করতে পারেন এবং তারপরে --amend

git rm <pathToFile>

আপনি -r সাথে সম্পূর্ণ ডিরেক্টরিগুলি সরাতে পারেন, বা এমনকি অন্যান্য Bash কমান্ডগুলির সাথে একত্রিত করতে পারেন

git rm -r <pathToDirectory>
git rm $(find -name '*.class')

ফাইল মুছে ফেলার পরে, আপনি --amend বিকল্প সহ, commit করতে পারেন

git commit --amend -C HEAD # the -C option is to use the same commit message

এটি আপনার সাম্প্রতিক স্থানীয় কমিটির অতিরিক্ত ফাইলগুলি পুনঃলিখন করবে, তাই এই ফাইলগুলি ধাক্কা কখনো পাঠানো হবে না এবং আপনার স্থানীয়। গিট রিপোজিটরি থেকে GC এও সরানো হবে।

আপনি ইতিমধ্যে কমিট ধাক্কা

আপনি অন্য দৃশ্যকল্পের একই সমাধানটি প্রয়োগ করতে পারেন এবং তারপর -f বিকল্পের সাথে git push প্রয়োগ করতে পারেন তবে এটি একটি সুপারিশযোগ্য পরিবর্তন (এটি আপনার সংগ্রহস্থলকে মজাদার করতে পারে) সহ রিমোট ইতিহাসকে ওভাররাইট করে, কারণ এটি সুপারিশ করা হয় না

পরিবর্তে, আপনি --amend ছাড়া এই --amend (এটি সম্পর্কে মনে রাখবেন -মেন্ড`: ঐ বিকল্পটি সর্বশেষ কমিটিতে ইতিহাসটি পুনর্বিবেচনা করে)।


SourceTree (GitHub এর জন্য GUI) এ, আপনি SourceTree ডান-ক্লিক করতে পারেন এবং একটি 'বিপরীত Commit' করতে পারেন। এই আপনার পরিবর্তন পূর্বাবস্থায় ফেরানো উচিত।

টার্মিনালে:

আপনি বিকল্পভাবে ব্যবহার করতে পারেন:

git revert

বা:

git reset --soft HEAD^ # Use --soft if you want to keep your changes.
git reset --hard HEAD^ # Use --hard if you don't care about keeping your changes.

আমি এই কাজের জন্য git rebase -i ব্যবহার করতে পছন্দ করি, কারণ একটি চমৎকার তালিকা পপ আপ করে যেখানে আমি পরিত্রাণ পেতে বাছাই করতে পারি। এটি এখানে অন্য কিছু উত্তর হিসাবে সরাসরি হতে পারে না, তবে এটি ঠিক মনে হয়

কতগুলি তালিকা আপনি তালিকাভুক্ত করতে চান তা চয়ন করুন, তারপরে এটিকে আহ্বান করুন (শেষ তিনটি তালিকাভুক্ত করার জন্য)

git rebase -i HEAD~3

নমুনা তালিকা

pick aa28ba7 Sanity check for RtmpSrv port
pick c26c541 RtmpSrv version option
pick 58d6909 Better URL decoding support

তারপর গিট আপনি যে কোন লাইন মুছে ফেলার জন্য অপসারণ মুছে ফেলা হবে।


আপনি জাঙ্ক প্রতিশ্রুতিবদ্ধ কিন্তু ধাক্কা না,

git reset --soft HEAD~1

মাথা ~ 1 মাথা আগে কমিটির জন্য একটি shorthand হয়। আপনি যদি রিসেট করতে চান তবে বিকল্পভাবে আপনি হ্যাশের SHA-1 পড়ুন। --soft বিকল্পটিটি মুছে ফেলবে তবে এটি আপনার সমস্ত পরিবর্তিত ফাইলগুলিকে "প্রতিশ্রুতিবদ্ধ করা পরিবর্তনগুলি" ছেড়ে দেবে, কারণ গিট স্ট্যাটাস এটি স্থাপন করবে।

হেড ব্যবহার করার আগে কমিটি " --hard " এর পরিবর্তে কাজকারী গাছের ট্র্যাক হওয়া ফাইলগুলির যেকোনো পরিবর্তন পরিত্রাণ পেতে চান।

অথবা

যদি আপনি ইতিমধ্যে ধাক্কা দেন এবং যে কেউ টানা থাকে তবে সাধারণত আমার ক্ষেত্রে, আপনি গিট রিসেট ব্যবহার করতে পারবেন না। তবে আপনি একটি গিট ফিরে করতে পারেন,

git revert HEAD

এটি একটি নতুন কমিটি তৈরি করবে যা দুর্ঘটনাজনিত কমিটির দ্বারা উপস্থাপিত সবকিছুকে বিপরীত করে।


আপনার commits এবং গাছ দেখতে SourceTree (গিট জন্য গ্রাফিক্যাল টুল) ব্যবহার করুন। আপনি সরাসরি ডান ক্লিক করে এটি সরাসরি রিসেট করতে পারেন।


কিভাবে শেষ গিট কমিটি পূর্বাবস্থায় ফেরাবেন?

শেষ কমিটির আগে যা কিছু ছিল তা সব ফিরিয়ে আনতে, HEAD এর আগে কমিটিতে রিসেট করতে হবে।

  1. আপনি যদি আপনার পরিবর্তনগুলি রাখতে চান না তবে:

    git reset --hard HEAD^
    
  2. আপনি যদি আপনার পরিবর্তন রাখতে চান:

    git reset --soft HEAD^
    

এখন আপনার গিট লগ চেক করুন। এটা আমাদের সর্বশেষ কমিটি মুছে ফেলা হয়েছে যে দেখাবে।


সহজ, আপনার কমান্ড লাইনে এটি চালান:

git reset --soft HEAD~ 

git log টাইপ করুন এবং শেষ commit হ্যাশ কোডটি খুঁজুন এবং তারপরে লিখুন:

git reset <the previous co>

একটি কমিটি পূর্বাবস্থায় ফিরিয়ে আনুন এবং পুনরায় করুন

$ git commit -m "Something terribly misguided"             # (1)
$ git reset HEAD~                                          # (2)
<< edit files as necessary >>                              # (3)
$ git add ...                                              # (4)
$ git commit -c ORIG_HEAD                                  # (5)
  1. এই আপনি পূর্বাবস্থায় ফেরাতে চান
  2. এটি আপনার কার্যক্ষেত্রের গাছ (ডিস্কে আপনার ফাইলগুলির অবস্থা) অপরিবর্তিত রাখে তবে কমিটিকে অনির্বাচিত করে এবং আপনি যে পরিবর্তনগুলি করেছেন তা পরিবর্তনগুলি ছেড়ে দেয় (যাতে তারা git status "কমিটির জন্য সংঘবদ্ধ না হয়ে পরিবর্তনগুলি" হিসাবে প্রদর্শিত হবে এবং আপনাকে এটি করতে হবে সম্পাদন করার আগে আবার তাদের যোগ করুন)। যদি আপনি পূর্ববর্তী git reset --soft HEAD~ আরও বেশি পরিবর্তন যুক্ত করতে চান, অথবা প্রেরণ বার্তা 1 পরিবর্তন করতে চান তবে আপনি git reset --soft HEAD~ পরিবর্তে ব্যবহার করতে পারেন, যা git reset --soft HEAD~ git reset HEAD~ (যেখানে HEAD~ HEAD~1 ) কিন্তু আপনার বিদ্যমান পরিবর্তন মঞ্চে পাতা।
  3. কাজ গাছ ফাইল সংশোধন করা।
  4. আপনি আপনার নতুন কমিটিতে অন্তর্ভুক্ত করতে চান যে কিছু git add
  5. পুরানো প্রতিশ্রুতি বার্তা পুনঃব্যবহার, পরিবর্তন কমিট। পুরানো মাথা অনুলিপি করুন .git/ORIG_HEAD ; -c ORIG_HEAD সাথে -c ORIG_HEAD একটি সম্পাদক খুলবে, যা প্রাথমিকভাবে পুরানো -c ORIG_HEAD লগ বার্তাটি ধারণ করে এবং এটি সম্পাদনা করার অনুমতি দেয়। যদি আপনি বার্তাটি সম্পাদনা করতে না চান তবে আপনি -C বিকল্পটি ব্যবহার করতে পারেন।

তবে যদি আপনি সূচীতে কোনও নতুন পরিবর্তন যুক্ত করেছেন তবে সতর্ক করুন - commit --amend ব্যবহার করে আপনার পূর্ববর্তী commit --amend এটি যুক্ত হবে।

যদি কোড ইতিমধ্যে আপনার সার্ভারে push করা হয় এবং আপনার ইতিহাস (রিবেস) তারপর ওভাররাইট করার অনুমতি আছে:

git push origin master --force

আপনি এই উত্তরটি দেখতে পারেন:

কিভাবে একটি পূর্ববর্তী অবস্থান ফিরে শিরোনাম সরানো? (বিচ্ছিন্ন মাথা)

উপরোক্ত উত্তরটি আপনাকে git reflog যা SHA-1 git reflog আপনি প্রত্যাবর্তন করতে চান তা খুঁজে বের করতে ব্যবহার করা হয়। উপরে বর্ণিত কমান্ডের ক্রমটি ব্যবহার করতে আপনি পূর্বাবস্থায় ফিরতে চান এমন বিন্দুটি একবার খুঁজে পেয়েছেন।

1 দ্রষ্টব্য, যাইহোক, যদি আপনি আপনার প্রত্যুত্তর বার্তাটিতে ভুল করে থাকেন তবে আপনাকে পূর্ববর্তী কমিটিতে রিসেট করতে হবে না। সহজ বিকল্পটি git reset (আপনার থেকে যেকোন পরিবর্তনগুলি git commit --amend ) git reset করতে হবে এবং তারপরে - git commit --amend , যা আপনার ডিফল্ট git commit --amend বার্তা সম্পাদকটি শেষ প্রেরণ বার্তাটির সাথে প্রাক-জনসংখ্যাটি খুলবে।


যদি আপনি এটি কিভাবে কাজ করে তা জানি না একটি কমিটি পূর্বাবস্থায় ফিরিয়ে আনা একটু ভয়ঙ্কর। কিন্তু আপনি যদি বুঝতে পারেন তবে এটি আসলে আশ্চর্যজনকভাবে সহজ।

বলুন আপনি এই আছে, যেখানে সি আপনার মাথা এবং (F) আপনার ফাইলের অবস্থা।

   (F)
A-B-C
    ↑
  master

আপনি Cuke nuke করতে চান এবং এটি আবার দেখতে না । তুমি এটা করো:

git reset --hard HEAD~1

ফলাফল হলো:

 (F)
A-B
  ↑
master

এখন বি হেড। কারণ আপনি ব্যবহার করেছেন - আপনার ফাইলগুলি বিটি এ তাদের রাজ্যে পুনরায় সেট করা হয়।

আহ, কিন্তু অনুমান কর সিটি একটি দুর্যোগ ছিল না, কিন্তু মাত্র একটি বিট বন্ধ। আপনি কমিটি পূর্বাবস্থায় ফিরিয়ে আনতে চান কিন্তু আপনি আরও ভাল সম্পাদনা করার আগে আপনার সম্পাদনাগুলি কিছুটা সম্পাদনা করার জন্য রাখুন। এখানে থেকে শুরু করে, আপনার মাথা হিসাবে C:

   (F)
A-B-C
    ↑
  master

আপনি এই কাজ করতে পারেন, - --hard বন্ধ:

git reset HEAD~1

এই ক্ষেত্রে ফলাফল হল:

   (F)
A-B-C
  ↑
master

উভয় ক্ষেত্রে, HEAD সর্বশেষ কমিটির একটি পয়েন্টার। আপনি যখন একটি জিট git reset HEAD~1 , তখন আপনি GIT কে একটি পয়েন্ট ফেরত পাঠাতে HEAD পয়েন্টারটি সরান। কিন্তু (যদি না আপনি --hard ব্যবহার করেন) আপনি আপনার ফাইলগুলি যেভাবে --hard ছেড়ে দিন। সুতরাং এখন git status দেখায় যে আপনি সি তে চেক করেছেন। আপনি কোনও জিনিস হারিয়েছেন না!

হালকা স্পর্শের জন্য, আপনি এমনকি আপনার কমিটি পূর্বাবস্থায় ফিরিয়ে আনতে পারেন কিন্তু আপনার ফাইল এবং আপনার index ছেড়ে দিতে পারেন:

git reset --soft HEAD~1

এটি কেবল আপনার ফাইলগুলিকে একমাত্র ছেড়ে দেয় না, এটি এমনকি আপনার সূচীকেও ছেড়ে দেয়। যখন আপনি git status , তখন আপনি দেখতে পাবেন যে একই ফাইল git status আগে থেকেই রয়েছে। প্রকৃতপক্ষে, এই কমান্ডের পরে, আপনি git commit করতে পারেন এবং আপনি ঠিক একই অঙ্গীকার পুনর্বিবেচনা করতে চান।

একাধিক জিনিস: ধরুন আপনি প্রথম উদাহরণ হিসাবে একটি কমিট ধ্বংস , কিন্তু তারপর আবিষ্কার আপনি সব পরে এটি প্রয়োজন ? শক্ত ভাগ্য, ঠিক আছে?

না, এটি ফিরে পেতে এখনও একটি উপায় আছে। টাইপ git reflog এবং আপনি আশেপাশে স্থানান্তরিত git reflog (আংশিক) git reflog একটি তালিকা দেখতে পাবেন। আপনি যে git reflog ধ্বংস করেছেন তা খুঁজুন এবং এটি করুন:

git checkout -b someNewBranchName shaYouDestroyed

আপনি এখন যে কমিটি পুনরুজ্জীবিত হয়েছে। কিছুটা 90 দিনের জন্য গিটে আসলেই ধ্বংস হয় না, তাই সাধারণত আপনি ফিরে যেতে পারেন এবং পরিত্রাণ পেতে চাইছেন এমন উদ্ধারকারীকে আপনি উদ্ধার করতে পারেন।


একটি একক কমান্ড:

git reset --soft 'HEAD^' 

এটা শেষ স্থানীয় কমিটি পূর্বাবস্থায় ফেরার জন্য মহান কাজ করে!


যদি আপনার Git Extras ইনস্টল করা থাকে, git undo আপনি সর্বশেষ git undo ফেরাতে পূর্বাবস্থায় git undo পারেন। git undo 3 শেষ 3 টি কাজ পূর্বাবস্থায় git undo 3 আনবে।


আমার ক্ষেত্রে আমি দুর্ঘটনাক্রমে এমন কিছু ফাইল করেছি যা আমি চাই না। তাই আমি নিম্নলিখিত কাজ করে এবং এটি কাজ করে:

git reset --soft HEAD^
git rm --cached [files you do not need]
git add [files you need]
git commit -c ORIG_HEAD

Gitk বা git লগের সাথে ফলাফল যাচাই করুন - স্ট্যাট


এটি করার অনেক উপায় আছে:

শেষ commit / পূর্ববর্তী কমিটি পূর্বাবস্থায় ফিরিয়ে আনতে Git কমান্ড:

সতর্কতা: ব্যবহার করবেন না - যদি আপনি জানেন না আপনি কী করছেন। - হার্ড খুব বিপজ্জনক , এবং এটি আপনার ফাইল মুছে ফেলতে পারে

জিট মধ্যে কমিট ফেরত বেসিক কমান্ড হল:

$ git reset --hard <COMMIT -ID>

অথবা

$ git reset --hard HEAD~<n>

COMMIT আইডি : কমিটির জন্য আইডি

এন: আপনি প্রত্যাবর্তন করতে চান শেষ সংখ্যা সংখ্যা

আপনি নীচে দেখানো হিসাবে কমিটি আইডি পেতে পারেন:

$ **git log --oneline**

d81d3f1 function to subtract two numbers

be20eb8 function to add two numbers

bedgfgg function to mulitply two numbers

যেখানে d81d3f1 এবং be20eb8 আইডি করা হয়।

এখন কিছু ক্ষেত্রে দেখা যাক:

ধরুন আপনি শেষ কমিটির 'd81d3f1' প্রত্যাবর্তন করতে চান। এখানে দুটি বিকল্প রয়েছে:

$ git reset --hard d81d3f1

অথবা

$ git reset --hard HEAD~1

ধরুন আপনি 'be20eb8' কমিটিটি ফিরিয়ে দিতে চান:

$ git reset --hard be20eb8

আরো বিস্তারিত তথ্যের জন্য আপনি উল্লেখ করতে পারেন এবং একটি নির্দিষ্ট অবস্থানে মাথা রিসেট করার জন্য কিছু অন্যান্য কমান্ড ব্যবহার করে দেখুন:

$ git reset --help

অন্য উপায়:

আপনি যে শাখাটি ফিরতে চান সেটি চেকআউট করুন, তারপরে আপনার স্থানীয় কাজ অনুলিপিটিকে রিমোট সার্ভারে সর্বশেষতম হতে চাইলে এটি পুনরায় সেট করুন (এটি বাই-বাই দ্বারা চলে যাবে)। এটি করার জন্য, SourceTree আমি ডানদিকে ক্লিক করেছি এবং "এই কমিটিতে BRANCHNAME রিসেট করুন" নির্বাচন করুন।

তারপরে আপনার সংগ্রহস্থলের স্থানীয় ডিরেক্টরির মধ্যে নেভিগেট করুন এবং এই কমান্ড চালান:

git -c diff.mnemonicprefix=false -c core.quotepath=false push -v -f --tags REPOSITORY_NAME BRANCHNAME:BRANCHNAME

এটি আপনার স্থানীয় রিপোজিটরিতে বর্তমানের পরে সমস্তটি কেবল মুছে ফেলবে তবে শুধুমাত্র সেই শাখার জন্য।


শেষ কমিটি পূর্বাবস্থায় ফিরিয়ে আনুন:

git reset --soft HEAD^ বা git reset --soft HEAD~

এই শেষ কমিটি পূর্বাবস্থায় ফেরানো হবে।

এখানে - --soft মানে স্টেজিং মধ্যে রিসেট।

HEAD~ বা HEAD^ HEAD এর আগে অঙ্গীকার করতে যাওয়ার অর্থ।

নতুন কমিটিতে সর্বশেষ কমিটি প্রতিস্থাপন করুন:

git commit --amend -m "message"

এটি নতুন কমিটির সাথে সর্বশেষ কমিটির প্রতিস্থাপন করবে।


নির্বাহ করার আগে

git branch --delete <branch>

রিমোট শাখার এক্সিকিউট নামটি এক্সিকিউটিভ করে তা নির্ধারণ করুন:

git ls-remote

এটি আপনাকে <branch> মানের জন্য ঠিক কী লিখতে হবে তা বলবে। ( branch কেস সংবেদনশীল!)





git git-commit git-reset git-revert