2011-09-18 8 views
7

मान लीजिए कि मैंने अपनी फ़ाइल foo.txt बदल दी है और git add foo.txt चलाएं। अब foo.txt "किए जाने वाले परिवर्तन" की सूची में दिखाई देता है।गिट: फ़ाइल के पुराने संस्करण को कैसे देखें (इससे पहले स्टेजिंग क्षेत्र/अनुक्रमणिका में जोड़ा गया था)?

अब मैं इन परिवर्तनों से पहले देखना चाहता हूं। मैं इसे git के साथ कैसे कर सकता हूं?

उत्तर

12

आप निम्न कर सकते हैं:

git show HEAD:foo.txt 

सामान्य में, इस वाक्य रचना अपने काम के पेड़ को बिना छुए प्रतिबद्ध एक विशेष से एक फ़ाइल को देखने के लिए बहुत उपयोगी है।

git show f414f31^^:README.txt 

अपडेट:: उदाहरण के लिए, आप को देखने के लिए क्या README.txt की भव्य माता पिता में की तरह था प्रतिबद्ध f414f31 आप कर सकते हैं चाहते हैं, तो नीचे टिप्पणी के रूप में VonC, इसे यहाँ ध्यान दें कि पथ यहाँ होना चाहिए महत्वपूर्ण है काम करने वाले पेड़ की जड़ से पूरा पथ, भले ही आप वर्तमान में उपनिर्देशिका में हों।

हालांकि, जब परिवर्तन में परिवर्तन होता है, तो अंतर में अक्सर दिलचस्पी होती है, जो Abizern interpreted your question as asking about है। उन आदेशों के बारे में सोचने का एक आसान तरीका यह है:

  • git diff का अर्थ है "मैंने अभी तक क्या परिवर्तन नहीं किए हैं?"
  • git diff --cached का अर्थ है "मैंने पहले से कौन से परिवर्तन किए हैं?"
+0

+1 http://stackoverflow.com/questions/2108405/branch-descriptions-in-git/2108832 में उल्लेख किया है, लेकिन जैसा कि # 2108832, और यहां दिखाया गया है http://stackoverflow.com/questions/2364147/how-to-get-just-one-file-from-another-branch/2364223#2364223, आपको रूट के पूर्ण पथ का उपयोग करने की आवश्यकता है 'गीट शो 'का उपयोग करते समय रेपो की निर्देशिका। – VonC

+0

धन्यवाद, वॉनसी - मैंने उस उपयोगी अनुस्मारक को शामिल करने के लिए अपना उत्तर अपडेट कर दिया है। –

6

मुझे लगता है कि क्या आप पूछ रहे हैं डिफ के बारे में है

मैं उन्हें here

लेकिन एक सारांश चित्र के बारे में लिखा है (जो फ़ाइलों के संस्करणों के बीच अंतर दिखाने) है:

enter image description here

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