उन सभी टैगों को कैसे सूचीबद्ध किया जाए जिनमें एक प्रतिबद्ध है?


227

यह प्रश्न समान है कि git में किसी विशिष्ट कमेंट को इंगित करने वाले सभी टैग कैसे सूचीबद्ध किए जाएं , लेकिन एक अंतर के साथ: मैं उन सभी टैगों की खोज करना चाहता हूं, जिनमें प्रत्येक टैग के पेड़ के भीतर एक विशिष्ट कमिटमेंट हो, विशेष रूप से टैग में चिह्नित फाइलें नहीं खुद (इस मामले में, केवल मेकफाइल परिवर्तन को टैग किया गया है)।


1
आप किसी विशेष फ़ाइल को टैग नहीं कर सकते - टैग केवल करने के लिए इंगित करते हैं। आप अपने प्रश्न को उस समस्या के अधिक विवरण के साथ संपादित करना चाह सकते हैं जिसे आप वास्तव में हल करने का प्रयास कर रहे हैं।
मार्क लोंगेयर


नोट: Windows पर, सुनिश्चित करें कि Git 2.0.x (2014) का उपयोग करने के लिए यदि आप चाहते हैं git tag --containsकरने के लिए नहीं दुर्घटना। देखें नीचे मेरा उत्तर
VonC

जवाबों:


348
git tag --contains <commit>

2
मैंने यह कोशिश की है। लेकिन अगर टैग में केवल एक फ़ाइल है, तो मेरा मानना ​​है कि यह केवल उस फ़ाइल के माध्यम से खोज करता है। यह पेड़ की खोज नहीं करेगा। इसके अलावा, जिस रिपॉजिटरी पर मैंने कोशिश की थी, वह बहुत बड़ा है और जमानत मिल गई।
atx

21
टैग में फ़ाइलें नहीं हैं। वे सिर्फ एक कमिट के लिए मार्कर हैं। यह देखते हुए, मुझे नहीं लगता कि आपकी आपत्ति समझ में आती है।
अमलॉयल

यह मुझे उस मामले में स्मृति की कमी के कारण प्रतिबद्ध नहीं दिखा रहा है। क्या आप जानते हैं कि मैं इस पर कैसे पहुँच सकता हूँ?
atx

5
क्या रिमोट टैग के खिलाफ ऐसा करने का कोई तरीका है? शाखाओं के साथ भी ऐसा ही होता है:git branch -r --contains <commit>
माइक

23

ध्यान दें कि यदि आप एक बड़े रेपो के लिए सभी टैग सूचीबद्ध करने के लिए आपको git 2.0.x (Q3 2014) की आवश्यकता है

जीन-जैक्स लाफे ( lanfeust69) द्वारा देखें प्रतिबद्ध cbc60b6 :

git tag --contains: स्टैक ओवरफ्लो से बचें

बड़े पुनर्खरीद में, पुनरावृत्ति कार्यान्वयन contains(commit, commit_list)एक ढेर अतिप्रवाह में परिणाम हो सकता है। इसे ठीक करने के लिए पुनरावृत्ति को एक लूप से बदलें।

यह समस्या विंडोज पर लिनक्स की तुलना में अधिक स्पष्ट है, जहां स्टैक डिफ़ॉल्ट रूप से अधिक सीमित है।

इस धागे को msysGit सूची पर भी देखें ।


9
मजाक नहीं? ;-)
माइकस्किंकल

3
@ मायकेसिंकल वेल ... इरादतन नहीं , कम से कम।
VonC

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.