git - गिट का उपयोग कर रिमोट रिपोजिटरी में एक टैग को कैसे दबाया जाए?




repository push (6)

आप अपने स्थानीय टैग को केवल git push --tags कमांड द्वारा git push --tags

$ git tag                            # see tag lists
$ git push origin <tag-name>         # push a single tag
$ git push --tags                    # push all local tags 

मैंने अपने लैपटॉप पर एक दूरस्थ गिट भंडार क्लोन किया है, फिर मैं एक टैग जोड़ना चाहता था इसलिए मैं भाग गया

git tag mytag master

जब मैं अपने लैपटॉप पर git tag चलाता हूं तो टैग mytag दिखाया जाता है। मैं फिर इसे रिमोट रिपोजिटरी में धक्का देना चाहता हूं, इसलिए मेरे पास मेरे सभी क्लाइंट्स पर यह टैग है, इसलिए मैं git push चलाता हूं लेकिन मुझे संदेश मिला:

सब कुछ नया

और अगर मैं अपने डेस्कटॉप पर जाता हूं और git pull चलाता हूं और फिर git tag कोई git tag नहीं दिखाया जाता है।

मैंने प्रोजेक्ट में फ़ाइल पर मामूली परिवर्तन करने की भी कोशिश की है, फिर इसे सर्वर पर दबाएं। उसके बाद मैं सर्वर से अपने डेस्कटॉप कंप्यूटर में परिवर्तन खींच सकता हूं, लेकिन मेरे डेस्कटॉप कंप्यूटर पर git tag चलाने पर अभी भी कोई टैग नहीं है।

मैं अपने टैग को दूरस्थ भंडार में कैसे दबा सकता हूं ताकि सभी क्लाइंट कंप्यूटर इसे देख सकें?


आप इस git push --tags टैग्स जैसे टैग को git push --tags


मैं यह सुनिश्चित करने के लिए कि मैं एक टैग git push <remote-name> tag <tag-name> रहा हूं, git push <remote-name> tag <tag-name> का उपयोग कर रहा हूं। मैं इसका उपयोग करता हूं: git push origin tag v1.0.1 । यह पैटर्न प्रलेखन ( man git-push ) पर आधारित है:

OPTIONS
   ...
   <refspec>...
       ...
       tag <tag> means the same as refs/tags/<tag>:refs/tags/<tag>.

यदि आप एक शाखा में काम कर रहे हैं:

git push --tags origin branch_name

--फॉलो-टैग गिट 1.8.3 में पेश किया गया एक सेन विकल्प है:

git push --follow-tags

यह दोनों काम करता है और केवल टैग जो दोनों हैं:

  • एनोटेट
  • धक्का देने वालों से पहुंचने योग्य (एक पूर्वज)

यह साधु है क्योंकि:

  • आपको केवल एनोटेटेड टैग को रिमोट पर धक्का देना चाहिए, और टैग संघर्ष से बचने के लिए स्थानीय विकास के लिए हल्के टैग रखना चाहिए। यह भी देखें: एनोटेटेड और अनन्य टैग के बीच क्या अंतर है?
  • यह असंबंधित शाखाओं पर एनोटेटेड टैग नहीं दबाएगा

यह उन कारणों से है कि - --tags से बचा जाना चाहिए।

गिट 2.4 ने उस ध्वज को डिफ़ॉल्ट रूप से चालू करने के लिए push.followTags विकल्प जोड़ा है जिसे आप सेट कर सकते हैं:

git config --global push.followTags true

एक टैग को धक्का देने के लिए:

git push origin <tag_name>

और निम्न आदेश सभी टैग को धक्का देना चाहिए (अनुशंसित नहीं):

git push --tags




git-tag