আপনার প্রতিশ্রুতিবদ্ধ গ্রাফটি দেখুন (গিটক বা অনুরূপ প্রোগ্রাম সহ)। আপনি টানার অনুরোধটি থেকে কমিটগুলি দেখতে পাবেন এবং আপনি নিজের প্রতিশ্রুতি এবং একীভূত প্রতিশ্রুতি দেখতে পাবেন (যদি এটি দ্রুত অগ্রগামী মার্জ না হয়)। মার্জ করার আগে আপনাকে কেবল নিজের নিজস্ব প্রতিশ্রুতিগুলির শেষটি খুঁজে পেতে হবে এবং এই প্রতিশ্রুতিতে শাখাটি পুনরায় সেট করতে হবে।
(আপনার যদি শাখার রিফ্লোগ থাকে তবে মার্জ হওয়ার আগে কমিট সন্ধান করা আরও সহজ হওয়া উচিত))
(মন্তব্যে আরও তথ্যের পরে সম্পাদনা করুন :)
ঠিক আছে, গ্রাফটি দেখুন:
আমি ধরে নিলাম সর্বশেষ (ডানদিকের) প্রতিশ্রুতি ছিল আপনার ভুল অনুরোধের মাধ্যমে ভুল মার্জ , যা এখানে দেখা নীল রেখাকে একীভূত করেছে। আপনার শেষ ভাল প্রতিশ্রুতিটি ব্ল্যাক লাইনের আগে একটাই হবে এখানে লাল চিহ্নযুক্ত:
এই প্রতিশ্রুতি পুনরায় সেট করুন, এবং আপনি ভাল হতে হবে।
এর অর্থ, আপনার স্থানীয় কাজের অনুলিপিতে এটি করুন (নিশ্চিত করুন যে আপনার আর কোনও অনাহুত জিনিস নেই, উদাহরণস্বরূপ গিট স্ট্যাশ দ্বারা):
git checkout master
git reset --hard 7a62674ba3df0853c63539175197a16122a739ef
gitk
এখন নিশ্চিত করুন যে আমি সেখানে চিহ্নিত প্রতিশ্রুতিতে সত্যই আপনি রয়েছেন এবং আপনি এর পূর্বসূরীতে টানা স্টাফগুলির মধ্যে কোনওটিই দেখতে পাবেন না।
git push -f origin master
(যদি আপনার গিথুব রিমোটের নাম দেওয়া হয় origin
- তবে নামটি পরিবর্তন করুন)।
এখন সমস্ত কিছু গিথুবকেও ঠিক দেখানো উচিত। প্রতিশ্রুতিগুলি এখনও আপনার ভাণ্ডারে থাকবে তবে কোনও শাখার কাছে পৌঁছনীয় নয়, সুতরাং সেখানে কোনও ক্ষতি করা উচিত নয়। (এবং তারা অবশ্যই অবশ্যই রজারপালদিনের সংগ্রহস্থলে থাকবে will)
(একই কাজ করার কোনও গিথুব নির্দিষ্ট ওয়েব-উপায় হতে পারে, তবে আমি গিথুব এবং এর পুল অনুরোধ পরিচালনার ব্যবস্থাটির সাথে খুব বেশি পরিচিত নই))
মনে রাখবেন যে অন্য কেউ যদি ইতিমধ্যে আপনার গুরুকে ভুল প্রতিশ্রুতি দিয়ে টানতে পারে, তবে তারপরে আপনার বর্তমানে যেমন সমস্যা রয়েছে তেমন সমস্যা আছে এবং সত্যিই পিছনে অবদান রাখতে পারে না। আপনার নতুন মাস্টার সংস্করণে পুনরায় সেট করার আগে।
যদি সম্ভবত এটি ঘটে থাকে বা আপনি যে কোনও সমস্যা এড়াতে চান তবে পুরানোটির সাথে ফিরে আসার পরিবর্তে নতুন কমিটের মাধ্যমে পরিবর্তনগুলি ফিরিয়ে আনার git revert
পরিবর্তে কমান্ডটি ব্যবহার করুন git reset
। (কিছু লোক মনে করেন আপনার প্রকাশিত শাখাগুলি দিয়ে কখনই রিসেট করা উচিত নয়)) এটি কীভাবে করবেন সে সম্পর্কে এই প্রশ্নের অন্যান্য উত্তর দেখুন।
ভবিষ্যতের জন্য:
আপনি যদি রজারপালাদিনের শাখার কয়েকটি কমিট চান তবে এর cherry-pick
পরিবর্তে ব্যবহার বিবেচনা করুন merge
। বা তাদের আলাদা শাখায় স্থানান্তরিত করতে এবং একটি নতুন টানার অনুরোধ প্রেরণের জন্য রজারপালদিনকে যোগাযোগ করুন।