के लिए गिथब वर्कफ़्लो मुझे अपने गिट वर्कफ़्लो पर कुछ प्रतिक्रिया चाहिए क्योंकि यह मेरा पहला उपयोग है और विभिन्न लेखों और स्टैक ओवरफ़्लो प्रश्नों को पढ़ने के बावजूद, मुझे यकीन नहीं है कि मेरी प्रक्रिया सही है। यह मेरा वर्तमान वर्कफ़्लो है (ध्यान दें कि मैं अपने सभी गिट इंटरैक्शन के लिए विंडोज एप्लिकेशन के लिए गिथब का उपयोग कर रहा हूं):सिंगल डेवलपर
- तय करें कि अगली सुविधा क्या है जिसे मैं कार्यान्वित करने जा रहा हूं।
- सुविधा के लिए एक उपयुक्त वर्णनात्मक नाम वाली शाखा बनाएं। मैं विंडोज के लिए गिथब में शाखा बटन पर क्लिक करके और एक नया नाम टाइप करके ऐसा करता हूं।
- कुछ कोड लिखें।
- मेरी नई शाखा में उन परिवर्तनों को प्रतिबद्ध करें।
- कुछ और कोड लिखें।
- मेरी नई शाखा में उन परिवर्तनों को प्रतिबद्ध करें।
- मैंने सुविधा को कार्यान्वित करना समाप्त कर दिया है, इसलिए मैं अपने परिवर्तनों को वापस मास्टर शाखा में विलय करना चाहता हूं। तो मैं शाखा शीर्षक के नीचे 'प्रबंधन' बटन पर क्लिक करता हूं।
- नई शाखा को मास्टर शाखा में मर्ज करें।
- नई शाखा हटाएं।
मैं चरण 7 तक प्रक्रिया से काफी खुश हूं, जिस बिंदु पर मैं थोड़ा उलझन में हूं। मुझे लगता है कि मेरा भ्रम इस तथ्य में निहित है कि मैं कमांड लाइन का उपयोग करने के बजाय विंडोज एप्लिकेशन के लिए गिथब का उपयोग करने की कोशिश कर रहा हूं। एप्लिकेशन चीजों को आसान बनाने लगता है लेकिन मेरे द्वारा उल्लेखित कुछ आदेश/निर्देशों और एप्लिकेशन में किए गए कार्यों के बीच मेरी समझ में डिस्कनेक्ट का थोड़ा सा हिस्सा है।
मुझे कुछ विशिष्ट प्रश्न पूछते हैं:
- मेरे कार्यप्रवाह वास्तव में सही है? यदि नहीं, तो इसमें क्या गलत है और मैं इसे कैसे सुधार सकता हूं?
- क्या मुझे नई शाखा में अपने परिवर्तन "प्रकाशित" करना चाहिए? मेरी समझ यह है कि यह कमांड लाइन पर
git push
करने के बराबर है। क्या यह सच है? यदि ऐसा है तो मुझे लगता है कि मैं केवल ऐसा करना चाहता हूं जब मैं या तो सुविधा को कार्यान्वित कर रहा हूं या यह एक सभ्य राज्य में है? - क्या मुझे शाखा को हटाया जाना चाहिए जब मैंने इसे मास्टर शाखा में विलय कर दिया हो या इसे हमेशा के लिए छोड़ा जाना चाहिए?
- क्या मुझे मर्ज पूरा करने के बाद मास्टर शाखा प्रकाशित करने की आवश्यकता है या यह अंतर्निहित है? विलय करने के लिए
'गुरु' में 'परीक्षण' मर्ज करने में विफल
असमर्थ:
- मैं कभी कभी मर्ज और यह त्रुटि संदेश प्राप्त करने में असमर्थ हूँ। आपको एक खोल खोलने और इस रेपो की स्थिति डीबग करने की आवश्यकता हो सकती है।
जब ऐसा पहले हुआ, मैं हालांकि मास्टर शाखा में मास्टर शाखा को बदल सकते हैं और नई शाखा मर्ज करने के लिए है कि अब और नहीं काम करता है में सक्षम था। कोई फर्क नहीं पड़ता कि मैं कौन सी शाखा में हूं, मैं दो शाखाओं को विलय नहीं कर सकता। दोनों सिंक में हैं और मैंने अपनी टेस्ट शाखा से सभी बदलाव प्रकाशित किए हैं। मैं शाखाओं में विलय क्यों नहीं कर सकता हूं, यह जानने के लिए कि मुझे खोल में क्या टाइप करना चाहिए?
संदर्भ के लिए, इन मुख्य लिंक मेरी प्रक्रिया के लिये कहा गया है कि कर रहे हैं:
- Scott Chacon on the workflow at Gitub
- Git workflow for a single developer on a local repository
- Git workflow for a single user
धन्यवाद - यह जानना अच्छा है कि मैं सही रास्ते पर हूं! मैं अभी भी शाखाओं से थोड़ा उलझन में हूं और मुझे लगता है कि वह जगह है जहां मेरा विलय सिरदर्द आता है। जब मैं विंडोज के लिए गिथब में एक नई शाखा बनाता हूं, तो क्या मुझे उम्मीद करनी चाहिए कि यह कहीं नई निर्देशिका तैयार करेगी? क्योंकि अगर ऐसा नहीं होता है तो क्या मैं सिर्फ अपनी मास्टर शाखा में कोड संपादित नहीं कर रहा हूं? – Stu
गिट .git फ़ोल्डर में deltas के गुच्छा में सबकुछ स्टोर करता है। तो जब आप एक नई शाखा बनाते हैं, तो ऐसा लगता है कि आप अपने मास्टर/क्लोन शाखा की एक प्रति पर काम कर रहे हैं। लेकिन यह सब एक ही फ़ोल्डर में है (कुछ बदलाव करें और शाखाएं फ्लिप करें और अपनी फ़ाइल को फिर से खोलें)। आपने जिस शाखा को चेक आउट किया है, उस पर ध्यान रखें, क्योंकि सामानों का एक गुच्छा लिखना आसान हो सकता है, भूल जाते हैं कि आपने शाखाएं नहीं स्विच की हैं और आप अपनी फीचर शाखा के बजाय मास्टर करने के लिए तैयार हैं। यही वह जगह है जहां बहुत आसानी से स्टैश आते हैं। – yellottyellott
माफी माँगने के लिए जल्द ही मेरे प्रश्न के उत्तर के रूप में स्वीकार नहीं करने के लिए, कुछ ऐसा लगता है कि मैंने आपकी आखिरी टिप्पणी को याद किया है जिसने मेरे सभी सवालों का जवाब दिया है। बहुत बहुत धन्यवाद! – Stu