गिट चेतावनी दे रहे हैं कि आप इस शाखा को हटाकर इतिहास खो सकते हैं। हालांकि यह वास्तव में किसी भी तरह के कमिट्स को तुरंत डिलीट नहीं करेगा, ब्रांच के कुछ या सभी कॉन्ट्रैक्ट्स अप्राप्य हो जाएंगे यदि वे किसी अन्य ब्रांच का हिस्सा नहीं हैं।
शाखा experimentको दूसरी शाखा में "पूरी तरह से विलय" होने के लिए, इसकी टिप कमिट अन्य शाखा के पूर्वज की होनी चाहिए, जिससे दूसरी शाखा का experimentसबसेट बन जाए। यह हटाना सुरक्षित बनाता है experiment, क्योंकि इसके सभी कमिट दूसरी शाखा के माध्यम से रिपॉजिटरी हिस्ट्री का हिस्सा बने रहेंगे। इसे "पूरी तरह" मर्ज किया जाना चाहिए, क्योंकि यह पहले से ही कई बार विलय हो सकता है, लेकिन अब अंतिम मर्ज के बाद जोड़ दिया गया है जो अन्य शाखा में निहित नहीं हैं।
गेट रिपॉजिटरी में हर दूसरी शाखा की जाँच नहीं करता है, हालाँकि; केवल दो:
- वर्तमान शाखा (HEAD)
- ऊपर की शाखा, अगर एक है
experimentआपके मामले में जैसा कि "अपस्ट्रीम ब्रांच" है , शायद है origin/experiment। यदि experimentवर्तमान शाखा में पूरी तरह से विलय हो जाता है, तो Git इसे बिना किसी शिकायत के हटा देता है। यदि यह नहीं है, लेकिन यह पूरी तरह से इसकी अपस्ट्रीम शाखा में विलय कर दिया गया है, तो गिट एक चेतावनी के साथ आगे बढ़ता है:
warning: deleting branch 'experiment' that has been merged
to 'refs/remotes/origin/experiment', but not yet merged to
HEAD.
Deleted branch experiment (was xxxxxxxx).
जहां xxxxxxxxएक प्रतिबद्ध आईडी इंगित करता है। इसके अपस्ट्रीम में पूरी तरह से विलय हो जाना इंगित करता है कि कमिट्स experimentको मूल रिपॉजिटरी में धकेल दिया गया है, ताकि अगर आप उन्हें यहां खो देते हैं, तो भी वे कम से कम कहीं और बच जाएं।
चूँकि Git अन्य शाखाओं की जाँच नहीं करता है, इसलिए किसी शाखा को हटाना सुरक्षित हो सकता है क्योंकि आप जानते हैं कि यह पूरी तरह से दूसरे में विलीन हो गई है; आप इस -Dविकल्प के साथ संकेत के रूप में कर सकते हैं , या पहले उस शाखा में स्विच कर सकते हैं और Git को आपके लिए पूर्ण रूप से विलय की स्थिति की पुष्टि कर सकते हैं।