2010-03-25 11 views
18

कहें कि आप केवल एक फ़ाइल में किए गए परिवर्तनों से छुटकारा पाने के लिए चाहते हैं, और जो भी भंडार में है, उसे वापस प्राप्त करें।जीआईटी के साथ एक विशिष्ट फाइल कैसे खींचें?

rm a-file.txt 
svn update a-file.txt 

Git में बराबर क्या है: मैं SVN में यह करने के लिए इस्तेमाल किया? मुझे पता है कि भंडार से evrything evrything कैसे खींचें/खींचें, लेकिन एक फ़ाइल के बारे में कैसे?

उत्तर

32

अपने (अप्रतिबद्ध) परिवर्तनों को पूर्ववत् करने के लिए:

git checkout a-file.txt 

आप परिवर्तनों को प्रतिबद्ध है और उन्हें वापस एक निश्चित पिछले करने के लिए पूर्ववत करने के लिए प्रतिबद्ध हैं:

git checkout [some-older-commit-ref] a-file.txt 

Btw, सबवर्सन के साथ होना चाहिए किया गया:

svn revert a-file.txt 
+1

आप "गिट रीसेट - हार्ड [प्रतिबद्ध/शाखा]" भी कर सकते हैं। "गिट लॉग - ऑनलाइन", --ऑनलाइन को खोजने के लिए, इसलिए यह आपको सभी अनियंत्रित जानकारी नहीं लिखता है। –

+0

+1 और "कुछ पिछली प्रतिबद्धता" पर स्पष्टीकरण के लिए: यह 'SHA1 आईडी' को संदर्भित करता है जिसे आसानी से' gitk' के माध्यम से पाया जा सकता है। अगर मुझे केवल उस फ़ाइल को अस्थायी स्थान (यानी वापस नहीं लौटाया जा रहा है) की आवश्यकता है, तो मैं 'शो' उपसमूह का उपयोग करूंगा: 'गिट शो 82e54378856215ef96c5db1ff1160a741b5dcd70: MyProj/proguard/mapping.txt> myproj_mapping.txt' – ef2011

संबंधित मुद्दे