ঠিক আছে, আমি মনে করি আমি এমন একটি কাজের প্রবাহ খুঁজে পেতে পরিচালিত করেছি যা আপনাকে যেখানে দরকার সেখানে ফিরে পাবে (যেন আপনি পপটি করেন নি)।
পূর্বে একটি ব্যাকআপ নিন !! এটি আপনার পক্ষে কাজ করবে কিনা তা আমি জানি না, সুতরাং আপনার পুরো রেপোটি যদি কাজ না করে তবেই এটি অনুলিপি করুন।
1) মার্জ সমস্যাগুলি সংশোধন করুন এবং প্যাচ থেকে আগত সমস্ত পরিবর্তনগুলি নির্বাচন করে সমস্ত দ্বন্দ্বের সমাধান করুন (কচ্ছপযুক্ত অবস্থায়, এটি এক হিসাবে প্রদর্শিত হবে Mআরমিট (তাদের))।
git mergetool
2) এই পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ করুন (সেগুলি ইতিমধ্যে মার্জেটুল কমান্ডের মাধ্যমে যুক্ত করা হবে)। এটিকে "মার্জ" বা কোনও কিছু মনে আছে এর প্রতিশ্রুতিবদ্ধ বার্তা দিন।
git commit -m "merge"
3) এখন আপনার প্যাচ থেকে নতুন প্রতিশ্রুতি নিয়ে শুরুতে আপনার স্থানীয় অ-স্টেজেড পরিবর্তনগুলি হবে (আমরা পরে এটি থেকে মুক্তি পেতে পারি)। এখন আপনার স্টেস্টেড পরিবর্তনগুলি করুন
git add .
git add -u .
git commit -m "local changes"
4) প্যাচ বিপরীত। এটি নিম্নলিখিত কমান্ড দিয়ে করা যেতে পারে:
git stash show -p | git apply -R
5) এই পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ:
git commit -a -m "reversed patch"
6) প্যাচ / আনপ্যাচ কমিটগুলি থেকে মুক্তি পান
git rebase -i HEAD^^^
এটি থেকে, এতে 'মার্জ' এবং 'বিপরীত প্যাচ' দিয়ে দুটি লাইন সরান।
)) আপনার অযাচিত পরিবর্তনগুলি ফিরে পান এবং 'স্থানীয় পরিবর্তনগুলি' প্রতিশ্রুতি পূর্বাবস্থায় ফিরিয়ে আনুন
git reset HEAD^
আমি এটি একটি সাধারণ উদাহরণ দিয়ে চালিয়েছি এবং এটি যেখানে আপনি থাকতে চান সেখানে ফিরে যায় - স্থানীয়ভাবে পরিবর্তিত হওয়া এবং স্ট্যাশ এখনও পপ করার জন্য উপলব্ধ থাকায় স্ট্যাশ পপ হওয়ার আগে সরাসরি।