चूँकि मैंने पहले से ही इन छवियों को बनाया है, मुझे लगा कि यह उनके लिए एक और उत्तर में उपयोग करने लायक हो सकता है, हालाँकि ..
(डॉट-डॉट) और ...
(डॉट-डॉट-डॉट) के बीच अंतर का वर्णन अनिवार्य रूप से मनोजर्स के उत्तर के समान ही है ।
कमांड git diff
आमतौर पर केवल आपको पेड़ के राज्यों के बीच कमिट पॉइंट में दो बिंदुओं के बीच का अंतर दिखाता है। ..
और ...
में अंकन git diff
निम्नलिखित अर्थ है:
दूसरे शब्दों में, git diff foo..bar
बिल्कुल वैसा ही है git diff foo bar
; दोनों आप दो शाखाओं के सुझावों के बीच अंतर दिखाई देगा foo
और bar
। दूसरी ओर, git diff foo...bar
आपको दो शाखाओं के "मर्ज बेस" और टिप के बीच का अंतर दिखाएगा bar
। "मर्ज का आधार" आम तौर पर उन दो शाखाओं के बीच सामान्य रूप से अंतिम प्रतिबद्ध होता है, इसलिए यह कमांड आपको उन परिवर्तनों को दिखाएगा जो आपके काम bar
को पेश किए गए हैं, जबकि उस समय में किए गए सभी चीजों को अनदेखा कर foo
रहे हैं।
आप सभी के बारे में पता करने की जरूरत है ..
और में ...
सूचनाएं git diff
। तथापि...
... यहाँ भ्रम का एक आम स्रोत है ..
और ...
इसका मतलब यह है कि जब एक आदेश में उपयोग किया जाता है git log
कि एक या अधिक तर्क के रूप में एक सेट की उम्मीद है जैसे अलग अलग चीजों का मतलब है। (ये सभी git rev-list
अपने तर्कों से कमिट की सूची का उपयोग करने के लिए आदेश देते हैं।)
का अर्थ ..
और उसके ...
लिए git log
नीचे दिए अनुसार रेखांकन दिखाया जा सकता है:
तो, git rev-list foo..bar
आपको शाखा पर bar
वह सब कुछ दिखाता है जो शाखा पर नहीं है foo
। दूसरी ओर, git rev-list foo...bar
आपको उन सभी कमिटों को दिखाता है जो foo
या तो हैं bar
, लेकिन दोनों में नहीं । तीसरा आरेख केवल यह दर्शाता है कि यदि आप दो शाखाओं को सूचीबद्ध करते हैं, तो आपको वे कमिट मिलते हैं जो एक या दोनों में हैं।
खैर, मुझे लगता है कि सब थोड़ा भ्रमित, वैसे भी, और मुझे लगता है कि प्रतिबद्ध ग्राफ चित्र मदद :)
Mer मैं केवल "आम तौर पर" कहता हूं जब से मर्ज संघर्षों को हल करता है, उदाहरण के लिए, git diff
आपको तीन-तरफा मर्ज दिखाएगा।
..
और...
मेंgit diff
और में अपनी अलग अर्थgit log
।