Git का diff
कमांड आपके प्रोजेक्ट में हुए बदलावों को समझने के लिए अमूल्य है। यह आपको अपनी फाइलों के अलग-अलग वर्ज़न की तुलना करने, संशोधनों का पता लगाने और कमिट करने से पहले बदलावों की समीक्षा करने की अनुमति देता है। यह ट्यूटोरियल git diff
के मुख्य उपयोगों को स्पष्टता और व्यावहारिक अनुप्रयोग पर केंद्रित करते हुए कवर करेगा।
विषय-सूची
- अपनी वर्किंग कॉपी की तुलना रिपॉजिटरी से करना
- स्टेजिंग एरिया की तुलना रिपॉजिटरी से करना
- बाहरी Diff टूल्स का उपयोग करना
- उन्नत
git diff
विकल्प
अपनी वर्किंग कॉपी की तुलना रिपॉजिटरी से करना
आपकी वर्किंग कॉपी आपकी स्थानीय मशीन पर प्रोजेक्ट फ़ाइलों का प्रतिनिधित्व करती है। रिपॉजिटरी Git द्वारा प्रबंधित संस्करण इतिहास संग्रहीत करती है। git diff
(बिना आर्ग्यूमेंट के) आपकी वर्किंग कॉपी में अनस्टेज्ड बदलाव दिखाता है:
git diff
आउटपुट अतिरिक्त (+
), हटाए गए (-
), और संशोधनों को प्रदर्शित करता है। उदाहरण के लिए:
--- a/my_file.txt
+++ b/my_file.txt
@@ -1,3 +1,4 @@
This is line 1
This is line 2
+This is a new line
This is line 3
यह my_file.txt
में एक नई लाइन जोड़े जाने का संकेत देता है। --- a/
और +++ b/
पुरानी और नई फ़ाइल के संस्करणों का प्रतिनिधित्व करते हैं। किसी विशिष्ट फ़ाइल की तुलना करने के लिए:
git diff my_file.txt
स्टेजिंग एरिया की तुलना रिपॉजिटरी से करना
स्टेजिंग एरिया में वे बदलाव होते हैं जिन्हें आपने अगले कमिट के लिए तैयार किया है। git diff --staged
(या git diff --cached
) स्टेज्ड बदलावों और अंतिम कमिट के बीच अंतर को प्रकट करता है:
git diff --staged
कमिट करने से पहले बदलावों की समीक्षा करने के लिए यह महत्वपूर्ण है। आप तुलना को सीमित करने के लिए फ़ाइल नाम निर्दिष्ट कर सकते हैं।
बाहरी Diff टूल्स का उपयोग करना
जटिल परिवर्तनों के लिए Git का डिफ़ॉल्ट टेक्स्ट-आधारित diff चुनौतीपूर्ण हो सकता है। बाहरी diff टूल दृश्य तुलना, सिंटैक्स हाइलाइटिंग और अन्य सहायक सुविधाएँ प्रदान करते हैं। git config
का उपयोग करके एक बाहरी टूल (जैसे Meld, KDiff3, Beyond Compare) को कॉन्फ़िगर करें:
git config --global diff.external meld
अपने टूल के कमांड से meld
को बदलें। सही कमांड और किसी भी आवश्यक सिस्टम-विशिष्ट समायोजन के लिए अपने टूल के दस्तावेज़ देखें।
उन्नत git diff
विकल्प
git diff
कई और विकल्प प्रदान करता है। उदाहरण के लिए:
git diff --check
: व्हाइटस्पेस त्रुटियों का पता लगाता है।git diff --summary
: परिवर्तनों का संक्षिप्त सारांश प्रदान करता है।git diff ..
: दो कमिट की तुलना करता है।git diff --word-diff
: शब्द-दर-शब्द परिवर्तनों को हाइलाइट करता है।
अपने वर्कफ़्लो के अनुसार git diff
को तैयार करने के लिए इन विकल्पों के साथ प्रयोग करें। कुशल Git उपयोग के लिए git diff
में महारत हासिल करना आवश्यक है।