আপনি যদি এখনও কোনও প্রতিশ্রুতি না করেন তবে কেবল (1: শাখা) এবং (3: চেকআউট) যথেষ্ট হবে।
অথবা, এক আদেশে:git checkout -b newBranch
git reset
ম্যান পেজে যেমন উল্লেখ করা হয়েছে :
$ git branch topic/wip # (1)
$ git reset --hard HEAD~3 # (2) NOTE: use $git reset --soft HEAD~3 (explanation below)
$ git checkout topic/wip # (3)
- আপনি কিছু কমিট করেছেন, তবে বুঝতে পারেন যে এগুলি "
master
" শাখায় থাকার অকাল ছিল । আপনি তাদের একটি বিষয় শাখায় পোলিশ করা চালিয়ে যেতে চান, সুতরাং topic/wip
বর্তমানের বাইরে শাখা তৈরি করুন HEAD
।
master
এই তিনটি কমিট থেকে মুক্তি পাওয়ার জন্য শাখাটি রিওয়াইন্ড করুন ।
- "
topic/wip
" শাখায় স্যুইচ করুন এবং কাজ চালিয়ে যান।
দ্রষ্টব্য: একটি git reset --hard
কমান্ডের "ধ্বংসাত্মক" প্রভাবের কারণে (এটি সূচক এবং কার্যনির্বাহী গাছটিকে পুনরায় সেট করে since কার্যকরী গাছের ট্র্যাক করা ফাইলগুলিতে যে কোনও পরিবর্তন <commit>
বাতিল করা হয়েছে), আমি বরং এর সাথে যাব:
$ git reset --soft HEAD~3 # (2)
এটি নিশ্চিত করবে যে আমি কোনও ব্যক্তিগত ফাইল হারাচ্ছি না (সূচীতে যোগ করা হয়নি)। বিকল্প সূচক ফাইল কিংবা সব কাজ গাছ স্পর্শ করবে না (তবে মাথা রিসেট শুধু মত সব মোড না)।
--soft
<commit>
সঙ্গে গীত 2.23+ , নতুন কমান্ডgit switch
(একই ধরনের সঙ্গে এক লাইনে শাখা তৈরি করবে reset --hard
, তাই তার প্রভাব হুঁশিয়ার):
git switch -f -c topic/wip HEAD~3