मैंने पिछले साल अपने दिन-प्रतिदिन के VCS के रूप में तोड़फोड़ से Git पर स्विच किया और अभी भी "गिट-थिंक" की बारीकियों को समझने की कोशिश कर रहा हूं।
जो मुझे हाल ही में परेशान कर रहा है वह "हल्का" बनाम एनोटेट बनाम हस्ताक्षरित टैग है। ऐसा लगता है कि यह सार्वभौमिक रूप से स्वीकार किया गया है कि एनोटेट किए गए टैग सभी वास्तविक उपयोगों के लिए हल्के टैग से बेहतर हैं, लेकिन मैंने जो स्पष्टीकरण पाया है कि यह मामला हमेशा या तो "क्योंकि सर्वोत्तम प्रथाओं" या "क्योंकि वे अलग-अलग हैं" को उबालते हैं। । दुर्भाग्यवश, यह जाने बिना कि यह सर्वोत्तम प्रथाएं हैं या उन मतभेदों को मेरे जीआईटी उपयोग के लिए कैसे प्रासंगिक हैं , यह जानकर बहुत असंतोषजनक तर्क हैं ।
जब मैंने पहली बार गिट में स्विच किया, तो हल्के-फुल्के टैग कटा हुआ ब्रेड के बाद से सबसे अच्छी चीज लग रहे थे; मैं बस एक कमिट पर इशारा कर सकता था और कह सकता था कि "1.0 था।" मुझे यह समझने में परेशानी हो रही है कि एक टैग को कभी भी इससे अधिक होने की आवश्यकता कैसे हो सकती है, लेकिन मैं निश्चित रूप से विश्वास नहीं कर सकता कि दुनिया के गिट विशेषज्ञ मनमाने ढंग से टैग किए गए टैग पसंद करते हैं! तो सभी हुड़दंग के बारे में क्या है?
(बोनस अंक: मुझे कभी टैग पर हस्ताक्षर करने की आवश्यकता क्यों होगी?)
संपादित करें
मुझे सफलतापूर्वक विश्वास हो गया है कि एनोटेट टैग एक अच्छी बात है - यह जानना कि कौन टैग किया गया है और कब महत्वपूर्ण है! अनुवर्ती के रूप में, अच्छे टैग एनोटेशन पर कोई सलाह? दोनों git tag -am "tagging 1.0" 1.0
और पिछले लॉग इन रणनीतियों की तरह महसूस करने के बाद से कमिट को संक्षेप में प्रस्तुत करने की कोशिश कर रहे हैं।
git log --pretty=oneline master..HEAD | git tag -a -F - $BRANCH.$BUILD_NUMBER