जब मैंने अपनी बाहरी डिस्क पर रिमोट रिपोजिटरी में 'गिट पुश मूल मास्टर' की कोशिश की, तो गिट चेतावनी ने यह बताते हुए कहा कि चेकआउट रिपोजिटरी को प्यूज़ करना डिफ़ॉल्ट रूप से अस्वीकार किए गए गिट की अगली रिलीज में होगा। बाहरी डिस्क पर मैंने चेकआउट प्रोजेक्ट किया है और मैं अपने कंप्यूटर पर इन रिपोजिट्री में किए गए परिवर्तन भेजना चाहता हूं। क्या 'गिट पुश मूल मास्टर' सही तरीका नहीं है? क्या मुझे अपनी बाहरी डिस्क पर भंडार पर 'गिट पुल ...' करना है? तो मैं परिवर्तनों को धक्का नहीं दे सकता लेकिन उन्हें खींच सकता हूं? केवल 'नंगे' भंडार के साथ काम करना अलग है? तो अगर मेरी बाहरी डिस्क पर भंडार एक नंगे भंडार था तो मैं इसमें बदलाव को धक्का दे सकता था? क्या मैं समझ में आता हूँ?केवल नंगे भंडार के लिए गिट पुश?
उत्तर
आपको गैर-नंगे भंडार को धक्का नहीं देना चाहिए क्योंकि धक्का केवल रेपो की आंतरिक स्थिति को अपडेट करेगा, और फ़ाइलों की चेक-आउट, डिस्क प्रतियों को प्रभावित नहीं करेगा। इस प्रकार, यदि आप रेपो में फ़ाइलों की स्थिति की ऑन-डिस्क प्रतियों को पहली बार अपडेट किए बिना (रेपो में git checkout
) के बिना उस रेपो में काम करना शुरू करते हैं तो आप समस्याओं में भाग ले सकते हैं।
चेतावनी सावधानी से पढ़ें। नया डिफ़ॉल्ट निषेध केवल गैर-नंगे भंडार में वर्तमान में चेक आउट की गई शाखा को धक्का दे रहा है। गैर-नंगे भंडार में किसी भी अन्य शाखा को धक्का देना बिल्कुल ठीक है।
इसका कारण यह है कि पुश प्रक्रिया के कामकाजी पेड़ तक कोई सीधी पहुंच नहीं है, इसलिए सूचकांक और शाखा के सिर कामकाजी पेड़ के नीचे बदल जाते हैं। जब आप बाद में काम करने वाले पेड़ पर जाते हैं तो ऐसा लगता है कि काम करने वाले पेड़ ने विकास में वास्तव में किए गए किसी भी बदलाव के साथ मिश्रित परिवर्तनों को पूर्ववत कर दिया है। इससे बदलावों के दो सेट अलग करना बहुत मुश्किल हो जाता है।
अन्य शाखाओं में धक्का देने के लिए ऐसी कोई डाउनसाइड्स नहीं है। फिर आप उस भंडार पर जा सकते हैं और इच्छित होने पर चेक किए गए शाखा में उन परिवर्तनों को मर्ज कर सकते हैं।
मुझे तब तक यह जवाब नहीं समझा जब तक कि मैंने पढ़ा [गिट तैयार »केवल नंगे भंडारों को धक्का दें] (http://gitready.com/advanced/2009/02/01/push-to-only-bare-repositories.html) और [सभी "बेयर" रिपोज़ के बारे में - क्या, क्यों, और कैसे एक गैर-नंगे धक्का को ठीक करने के लिए] (http://sitaramc.github.com/concepts/bare.html) (विशेष रूप से "हाँ हाँ, लेकिन क्यों क्या मुझे एक नंगे रेपो चाहिए? "सेक्शन)। अब, हालांकि, मैं करता हूँ! –
क्या हमारे पास चेक आउट शाखा में धक्का देने की क्षमता नहीं है और फिर शाखा के साथ पोस्ट-प्राप्त हुक मर्ज मूल बर्नच का उपयोग करके अपडेट किया गया था? –
- 1. गिट एक अन्य नंगे भंडार
- 2. गिट पुश केवल एक भंडार का हिस्सा
- 3. Git एक नंगे भंडार
- 4. सभी रिमोट शाखाओं को एक नंगे गिट भंडार में लाएं
- 5. गिट नंगे भंडार में वर्तमान शाखा स्विच करें
- 6. गिट पुश
- 7. गिट भंडार के भीतर गिट भंडार
- 8. गिट पुश केवल एक फ़ाइल हैरोकू
- 9. एकाधिक गिट परियोजनाओं के लिए एकल गिट भंडार का उपयोग
- 10. एकाधिक गिट भंडार रखने के
- 11. गिट नंगे - बैकअप क्या है?
- 12. गिट पोस्ट-पुश हुक?
- 13. गिट: गिट पुश रोकें
- 14. गिट: "त्रुटि: शुरुआती पुश
- 15. गिट कैसे पुश
- 16. नंगे रिपोज़
- 17. गिट पुश
- 18. गिट पुश
- 19. एक्सकोड गिट पुल/पुश क्रैश
- 20. गिट पुश अस्वीकार
- 21. मैं गिट * INTO * एक नंगे भंडार के साथ कैसे खींच/ला सकता हूं?
- 22. एक गिट रिपोजिटरी को केवल पढ़ने के लिए कैसे?
- 23. गिट: परिवर्तन देखने के लिए अगला पुश
- 24. किसी मौजूदा नंगे भंडार में रीफ्लॉग जानकारी कैसे बनाएं
- 25. गिट बैकअप: क्या मैं इसे दबाए जाने पर एक गिट नंगे भंडार की प्रतिलिपि बना सकता हूं?
- 26. गिट पुश। जीआईटी/विवरण फ़ाइल
- 27. गिट फिल्टर-शाखा के बाद गिट पुश
- 28. एक गिट पुश
- 29. गिट: पुश के कारण परिवर्तन कैसे देखें?
- 30. गिट भंडार के लिए नियमित अभिव्यक्ति
तो, रिपो को दबाएं रेपो से बिल्कुल खींच नहीं है? –
बननेगुरु: सही; एक धक्का प्रभावी ढंग से एक fetch के विपरीत है। खींचें = लाने + वर्तमान शाखा में विलय करें। – ebneter
कुंजी यह है कि एक पुल काम करने वाले पेड़ ("ऑन-डिस्क" फ़ाइलों) में फ़ाइलों को भी अद्यतन करता है, जो न तो एक धक्का और न ही एक fetch करता है। – mipadi