Git ওয়ার্কফ্লোর বেশ কিছু জায়গায় এরর হতে পারে। এই আর্টিকেলে, আমরা এমন একটি এরর নিয়ে আলোচনা করব যা সমাধান করা বিভ্রান্তিকর!
Git এররটি
fatal: refusing to merge unrelated histories এররটি ঘটে যখন আপনি একটি Git রিপোজিটরি থেকে একটি প্রজেক্ট ক্লোন করেছেন এবং কहीতে কইতে সেই স্পেশাল .git ডাইরেক্টরি ডিলিট হয়ে যায় বা করপ্ট হয়ে যায়।
এই .git ডাইরেক্টরিটি হলো ভার্সন কন্ট্রোল আপনার রিমোট রিপোজিটরির সাথে পরিবর্তন ট্র্যাক করার পথ। আপনি এই ডাইরেক্টরির অস্তিত্ব দেখতে পারেন আপনার লোকাল রিপোজিটরির রুট ডাইরেক্টরিতে ls -a কমান্ড ইনপুট দিয়ে। ফলস্বরূপ লিস্টে .git ডাইরেক্টরিটি থাকবে।
কারণ .git ডাইরেক্টরি ক্ষতিগ্রস্ত বা ডিলিট হওয়ায়, ভার্সন কন্ট্রোল আপনার লোকাল হিস্টরি থেকে অনবগত থাকে এবং রিমোট রিপো থেকে পুশ বা পুল করার সময় এই মার্জ আনরিলেটেড হিস্টরি এরর থ্রো করে।
সমাধান
Git-এর এই সমাধানটি হলো রিমোট রিপোকে আপনার প্রজেক্টে পুল করা এস্কেপ হ্যাচ --allow-unrelated-histories ব্যবহার করে।
git pull origin master --allow-unrelated-histories
এটি দুটি প্রজেক্টকে নন-ম্যাচিং Git হিস্টরি সহ মার্জ করার অনুমতি দেয়। আরও ইনফরমেশন Git-এর অফিশিয়াল ডকুমেন্টেশনে পাওয়া যাবে।
আপনি যদি পুল কমান্ড ইনপুট দিয়ে পুশ করার চেষ্টা করেন, তবে এখন আপনি সেটি করতে পারবেন।