मेरे लिए काम करने वाली एकमात्र चीज़ रेपो को किसी अन्य फ़ोल्डर में जांचना था। मान लें कि वर्तमान रेपो में है /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
आपको चलाने के बारे में क्या संकेत देता है