सवाल चेतावनी: push.default अनसेट है; इसका अंतर्निहित मूल्य गिट 2.0 में बदल रहा है


मैं थोड़ी देर के लिए गिट का उपयोग कर रहा हूं और हाल ही में इस चेतावनी संदेश को खोजने के लिए केवल एक अपडेट डाउनलोड किया है जब मैं कोशिश करता हूं push

warning: push.default is unset; its implicit value is changing in 
Git 2.0 from 'matching' to 'simple'. To squelch this message 
and maintain the current behavior after the default changes, use: 

  git config --global push.default matching

To squelch this message and adopt the new behavior now, use: 

  git config --global push.default simple

मैं स्पष्ट रूप से उल्लेख किए गए मानों में से एक पर सेट कर सकता हूं, लेकिन उनका क्या अर्थ है? के बीच क्या अंतर है simple तथा matching?

यदि मैं इसे एक क्लाइंट पर बदलता हूं तो क्या मुझे अन्य क्लाइंट्स पर कुछ भी करने की ज़रूरत है, जिनके साथ मैं रिपो साझा करता हूं?


1575
2017-10-30 21:48


मूल


stackoverflow.com/questions/948354/git-push-current-branch - gliptak
stackoverflow.com/a/948397/1841194 - Hi I'm Frogatto
नोट: गिट 2.8 (मार्च 2016) उस चेतावनी को हटा देगा! देख stackoverflow.com/a/22356644/6309 - VonC


जवाब:


इसमें बहुत विस्तार से समझाया गया है दस्तावेज़, लेकिन मैं सारांशित करने की कोशिश करूंगा:

  • matching माध्यम git push मर्जी अपनी सभी स्थानीय शाखाओं को धक्का दें रिमोट पर एक ही नाम वाले लोगों के लिए। यह उस शाखा को गलती से धक्का देना आसान बनाता है जिसका आप इरादा नहीं रखते थे।

  • simple माध्यम git push मर्जी केवल वर्तमान शाखा को उस पर धक्का दें git pull से खींचेंगे, और यह भी जांचता है कि उनके नाम मिलते हैं। यह एक अधिक सहज ज्ञान युक्त व्यवहार है, यही कारण है कि डिफ़ॉल्ट इसे बदल रहा है।

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


2120
2017-10-30 22:11



इस परिवर्तन को जानकर खुशी हुई। जब मैं गिट करने के लिए नया था तो मैंने गलती से सभी स्थानीय शाखाओं को सोचने लगा git push केवल मौजूदा शाखा को धक्का देगा। - rahul286
उद्देश्य यह है कि, अनुभवजन्य रूप से, अधिकांश नए डिफ़ॉल्ट व्यवहार की अपेक्षा करते हैं - Blake Miller
दस्तावेज खोलने और स्ट्रिंग के लिए खोज करने के लिए हमें बताए गए निर्देश के बजाए चेतावनी संदेश में अपने अद्भुत स्पष्ट सारांश के लिए यह बहुत बेहतर होगा। - hertzsprung
"यह दस्तावेज़ों में बहुत स्पष्ट रूप से समझाया गया है" निश्चित रूप से यह है कि यदि आप सही पृष्ठ पर हैं, हालांकि मैन्युअल के लिए गिट पुश शब्द का जिक्र भी नहीं है सरल , जो संभवतः यहां इतने सारे लोग यहां समाप्त हुए हैं। - Gerry
हैमर का सारांश गिट डॉक्स की तुलना में एक बहुत अधिक संक्षिप्त स्पष्टीकरण है। - AJ.


मुझे एहसास है कि यह एक पुरानी पोस्ट है, लेकिन जैसा कि मैंने अभी एक ही मुद्दे में भाग लिया था और मुझे जवाब खोजने में परेशानी थी, मैंने सोचा कि मैं थोड़ा जोड़ूंगा।

तो @ हैमर का जवाब सही है। का उपयोग करते हुए push.default simple एक तरह से, अपनी शाखाओं पर ट्रैकिंग को कॉन्फ़िगर करने की तरह है, इसलिए आपको धक्का और खींचते समय रिमोट और शाखाओं को निर्दिष्ट करने की आवश्यकता नहीं है। matching विकल्प डिफ़ॉल्ट शाखाओं पर सभी शाखाओं को उनके संबंधित समकक्षों पर धक्का देगा (जो तब तक स्थापित किया गया था जब तक कि आपने अपना रेपो कॉन्फ़िगर नहीं किया हो)।

एक बात मुझे आशा है कि भविष्य में दूसरों को उपयोगी लगेगा कि मैं ओएस एक्स माउंटेन शेर पर गिट 1.8 चला रहा था और कभी भी यह त्रुटि नहीं देखी। मैवरिक्स में अपग्रेड करना अचानक अचानक दिखाया गया है (चल रहा है git --version दिखाएंगे git version 1.8.3.4 (Apple Git-47) जिसे मैंने ओएस के अपडेट तक कभी नहीं देखा था।


19
2017-10-26 17:00



मैवरिक्स में अपग्रेड करने के बाद भी मैंने इसे देखना शुरू कर दिया। तो मुझे लगता है कि गिट को मैवरिक्स के रूप में एक ही समय में अपग्रेड किया गया था, जैसा कि आप कह रहे हैं। - Per Lundberg


यदि आपको मूल्य के बारे में शिकायत करने वाले गिट से एक संदेश मिलता है simple कॉन्फ़िगरेशन में, अपना जांचें git version

उन्नयन के बाद XCode (पर Mac दौड़ना Mountain Lion), जो भी अपग्रेड किया गया git से 1.7.4.4 सेवा मेरे 1.8.3.4, अपग्रेड से पहले शुरू होने वाले गोले अभी भी गिट चला रहे थे 1.7.4.4 और मूल्य के बारे में शिकायत की simple वैश्विक विन्यास में push.default के लिए।

समाधान पुराने संस्करण को चलाने वाले गोले को बंद करना था git और नए संस्करण का उपयोग करें!


7
2018-01-31 15:35



मैं एक ताजा एक्सकोड इंस्टॉल का उपयोग कर रहा हूं (गिट संस्करण 1.8.5.2 है) और जब भी मैं भाग गया तब भी मुझे यह त्रुटि हो रही थी: git config --global push.default simple - Sam-Graham


मैं सोच रहा था कि मुझे उबंटू 16.04 (जो गिट 2.7.4 के साथ आता है) पर इतना बड़ा चेतावनी संदेश क्यों मिल रहा था, लेकिन आर्क लिनक्स पर नहीं। कारण यह है कि चेतावनी को हटा दिया गया था गिट 2.8 (मार्च 2016):

गिट संस्करण 2.0 के आसपास संक्रमण के पार, उपयोगकर्ता का उपयोग किया जाता था   सेटिंग के बिना "गिट पुश" चलाते समय एक बहुत जोरदार चेतावनी प्राप्त करें   push.default विन्यास चर। हम अब चेतावनी नहीं देते क्योंकि   संक्रमण बहुत समय पहले पूरा हो गया था।

तो अगर आपके पास गिट 2.8 है और बाद में आपको सेट करने की आवश्यकता नहीं है तो आपको चेतावनी दिखाई नहीं देगी push.default जब तक आप डिफ़ॉल्ट को बदलना नहीं चाहते हैं 'simple' व्यवहार।


1
2018-03-19 13:10