git fetch <gitserver> <remotetag>:<localtag>
===================================
मैंने बस यही किया। पहले मैंने सुनिश्चित किया कि मुझे टैग नाम की वर्तनी पता है।
git ls-remote --tags gitserver; : or origin, whatever your remote is called
इसने मुझे चुनने के लिए अपने git सर्वर पर टैग की एक सूची दी। मूल पोस्टर पहले से ही उसके टैग का नाम जानता था इसलिए यह कदम सभी के लिए आवश्यक नहीं है। आउटपुट इस तरह दिखता था, हालांकि असली सूची लंबी थी।
8acb6864d10caa9baf25cc1e4857371efb01f7cd refs/tags/v5.2.2.2
f4ba9d79e3d760f1990c2117187b5010e92e1ea2 refs/tags/v5.2.3.1
8dd05466201b51fcaf4ca85897347d82fcb29518 refs/tags/Fix_109
9b5087090d9077c10ba22d99d5ce90d8a45c50a3 refs/tags/Fix_110
मैंने वह टैग चुना जो मुझे चाहिए था और उसे प्राप्त किया और कुछ भी नहीं इस प्रकार है।
git fetch gitserver Fix_110
मैंने तब अपने स्थानीय मशीन पर यह टैग लगाया, अपना टैग उसी नाम से दिया।
git tag Fix_110 FETCH_HEAD
मैं दूरस्थ रिपॉजिटरी को क्लोन नहीं करना चाहता था जैसा कि अन्य लोगों ने करने का सुझाव दिया है, क्योंकि मैं जिस प्रोजेक्ट पर काम कर रहा हूं वह बड़ा है और मैं एक अच्छे स्वच्छ वातावरण में विकास करना चाहता हूं। मुझे लगता है कि यह मूल सवालों के करीब है "मैं यह पता लगाने की कोशिश कर रहा हूं कि समाधान से एक PARTICULAR TAG कैसे डाउनलोड होता है" जो पूरे रिपॉजिटरी को क्लोन करने का सुझाव देता है। मैं यह नहीं देखता कि किसी के पास विंडोज NT और विंडोज 8.1 स्रोत कोड की एक प्रति क्यों होनी चाहिए यदि वे डॉस 0.1 स्रोत कोड (उदाहरण के लिए) को देखना चाहते हैं।
मैं भी CHECKOUT का उपयोग नहीं करना चाहता था क्योंकि अन्य लोगों ने सुझाव दिया है। मैंने एक शाखा की जाँच की थी और उसे प्रभावित नहीं करना चाहता था। मेरा इरादा उस सॉफ़्टवेयर को लाना था जो मैं चाहता था ताकि मैं कुछ चुन सकूं और उसे अपने विकास में जोड़ सकूं।
संभवतः टैग की गई प्रति की प्रति के बजाय टैग को लाने का एक तरीका है। मुझे खुद को कमिटेड टैग करना था। संपादित करें: आह हाँ, मुझे यह अब मिल गया है।
git fetch gitserver Fix_110:Fix_110
जहाँ आप कोलन देखते हैं, वह रिमोट-नेम है: स्थानीय-नाम और यहाँ वे टैग नाम हैं। यह काम करने वाले पेड़ आदि को परेशान किए बिना चलता है। यह सिर्फ रिमोट से लोकल मशीन में सामान कॉपी करने के लिए लगता है इसलिए आपकी खुद की कॉपी है।
git fetch gitserver --dry-run Fix_110:Fix_110
जोड़ा गया -dry-run विकल्प से आप कमांड को क्या करना चाहते हैं, इस पर एक नज़र डाल सकते हैं, यदि आप इसकी जाँच करना चाहते हैं कि आप क्या चाहते हैं। तो मैं एक साधारण लगता है
git fetch gitserver remotetag:localtag
असली जवाब है।
=
टैग के बारे में एक अलग नोट ... जब मैं कुछ नया शुरू करता हूं तो मैं आमतौर पर गिट इनिट के बाद खाली रिपॉजिटरी को टैग करता हूं
git rebase -i XXXXX
एक कमिट की आवश्यकता होती है, और यह सवाल उठता है कि "आप उन परिवर्तनों को कैसे दोहराते हैं जिनमें आपका पहला सॉफ़्टवेयर परिवर्तन शामिल है?" इसलिए जब मैं काम करना शुरू करता हूं तो मैं करता हूं
git init
touch .gitignore
[then add it and commit it, and finally]
git tag EMPTY
यानी मेरे पहले वास्तविक परिवर्तन से पहले एक कमिट बनाएं और बाद में उपयोग करें
git rebase -i EMPTY
अगर मैं पहले बदलाव सहित अपने सभी कामों को फिर से करना चाहता हूँ ।