আমার পক্ষে একমাত্র কাজটি ছিল অন্য ফোল্ডারে রেপো চেকআউট করা। ধরুন বর্তমান রেপো রয়েছে /home/me/current
।
আমি তখন করেছি
git clone /home/me/current /home/me/temp
এটি রেপো-এর একটি পৃথক ক্লোন তৈরি করে /home/me/temp
আমি এখন যেতে /home/me/temp
চাই এবং যা করতে চাই তা করতে পারি। উদাহরণ স্বরূপ
git reset --hard commit-hash-before-delete
এখন আমি মুছে ফেলা ফাইল ফোল্ডারটি আবার কপি করতে পারি
cp -r /home/me/temp/some/deleted/folder /home/me/current/some/deleted/folder
এবং টেম্প ফোল্ডারটি মুছুন
rm -rf /home/me/temp
এর উদাহরণ
git checkout -- some/deleted/folder
git checkout -- some/deleted/folder/*
কাজ করোনা
$ git checkout -- some/deleted/folder/*
zsh: no matches found: some/deleted/folder/*
$ git checkout -- some/deleted/folder
error: pathspec 'some/deleted/folder' did not match any file(s) known to git.
যেমন অন্যান্য উদাহরণ
git reset --hard HEAD
কেবল মুছে ফেলা ফাইলের বাইরে ধ্বংসাত্মক। অন্য যে কোনও পরিবর্তনগুলিও হারিয়ে যাবে।
একইভাবে
git reset --hard some-commit
পরে কোনও কমিট হারাবে some-commit
git status
কী আদেশ (গুলি) চালাতে হবে সে সম্পর্কে আপনাকে একটি ইঙ্গিত দেবে