this के अनुसार:प्रतिबद्ध वस्तुओं में गिट स्टोर diff जानकारी करता है?
यह ध्यान रखें कि यह सबसे एससीएम प्रणाली है कि आप के साथ परिचित हो सकते हैं से बहुत अलग है महत्वपूर्ण है। सबवर्सन, सीवीएस, पर्सफोर्स, मर्कुरियल और सभी डेल्टा स्टोरेज सिस्टम का उपयोग करते हैं - वे एक प्रतिबद्धता और अगले के बीच अंतर स्टोर करते हैं। गिट ऐसा नहीं करता है - यह आपके प्रोजेक्ट में सभी फ़ाइलों को एक बार स्नैपशॉट संग्रहीत करता है जो हर बार जब आप प्रतिबद्ध करते हैं तो इस वृक्ष संरचना में दिखते हैं। यह गिट का उपयोग करते समय समझने के लिए बहुत महत्वपूर्ण अवधारणा है।
फिर भी जब मैं git show $SHA1ofCommitObject
चलाने ...
commit 4405aa474fff8247607d0bf599e054173da84113
Author: Joe Smoe <[email protected]>
Date: Tue May 1 08:48:21 2012 -0500
First commit
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..de8b69b
--- /dev/null
+++ b/index.html
@@ -0,0 +1 @@
+<h1>Hello World!</h1>
diff --git a/interests/chess.html b/interests/chess.html
new file mode 100644
index 0000000..e5be7dd
--- /dev/null
+++ b/interests/chess.html
@@ -0,0 +1 @@
+Did you see on Slashdot that King's Gambit accepted is solved! <a href="http://game
... यह पिछले प्रतिबद्ध के साथ प्रतिबद्ध के diff आउटपुट। मुझे पता है कि गिट ब्लॉब ऑब्जेक्ट्स में diffs स्टोर नहीं करता है, लेकिन क्या यह प्रतिबद्ध वस्तुओं में diffs स्टोर करता है? या git show
गतिशील रूप से diff की गणना कर रहा है?
एक साइड नोट: गिट वास्तव में डेल्टा-संपीड़ित वस्तुएं करता है, लेकिन यह केवल संपीड़न के लिए है। लोग कभी-कभी गिट स्टोर्स को अलग करते हुए गलत समझते हैं। यहां प्रारूप के कुछ दस्तावेज हैं: http://book.git-scm.com/7_the_packfile.html (ध्यान रखें कि ऑब्जेक्ट्स जो इसके बीच डेल्टा रिकॉर्ड करते हैं, वे केवल डेटा के ब्लब्स हैं जो खोजे गए थे; वे जरूरी नहीं हैं एक ही फ़ाइल के लगातार संस्करण, हालांकि वे हो सकते हैं। और बेशक, डेल्टा लाइन-बाय-लाइन diffs नहीं हैं।) – Cascabel
जेफोमी से बहुत प्रासंगिक लिंक अपडेट करना: http://git-scm.com/book/ एन/गिट-इंटरनल-पैकफाइल –