सेट अप

मेरी master की दो स्थानीय शाखाएं हैं, जिन्हें foo और bar कहा जाता है।

सबसे पहले, मैंने foo शाखा बनाई, कुछ बदलाव किए/प्रतिबद्ध किए, और फिर origin (GitHub रेपो) पर उसी नाम वाली शाखा में धकेल दिया। फिर मैंने उन परिवर्तनों को master में मर्ज करने के लिए GitHub पर एक पुल अनुरोध बनाया, और यह वर्तमान में कोड समीक्षा की प्रतीक्षा कर रहा है।

बाद में, मैंने bar शाखा बनाई, कुछ बदलाव/प्रतिबद्धताएं कीं, और फिर ऐसी स्थिति में भाग गया जहां मुझे foo शाखा में जोड़े गए चीजों पर निर्भर और अधिक परिवर्तन करने की आवश्यकता है।

प्रश्न

क्या मुझे remotes/origin/foo को स्थानीय bar में मिलाना चाहिए? या क्या मुझे स्थानीय foo को स्थानीय bar में मिला देना चाहिए (या क्या वह वही काम पूरा करेगा जब कोई अन्य काम नहीं किया गया हो)? या पूरी तरह से कोई और तरीका है?

मूल रूप से, मैं कोशिश कर रहा हूं कि जब मैं bar को धक्का देता हूं और उसका पीआर जमा करता हूं तो मैं इतिहास को खराब नहीं करता या अनावश्यक संघर्ष नहीं करता। मैं मूल रूप से एक पूर्ण git नौसिखिया हूं, और मैं इस ऑनलाइन पुस्तक का उपयोग अपने रूप में कर रहा हूं सीखने के संसाधन, हालांकि मुझे वहां जवाब नहीं मिल रहा है, और बहुत भाग्य नहीं है चारों ओर गुगलिंग।

1
FtDRbwLXw6 18 अक्टूबर 2017, 21:07

1 उत्तर

सबसे बढ़िया उत्तर

अपनी फू शाखा को संपादित करने के बाद, आप फू के शीर्ष पर अपनी बार शाखा को रीबेस कर सकते हैं

git checkout bar git rebase foo

इससे बार में foo के सभी परिवर्तन हो जाएंगे।

ध्यान दें कि यदि आप फू में सफलतापूर्वक विलय होने से पहले एक पुल अनुरोध के लिए बार सबमिट करते हैं, तो बार में foo पर मौजूद सभी कमिट शामिल होंगे, इसलिए यह # कमिट्स के संदर्भ में "बड़ा" दिखेगा।

बस पहले foo में विलय करना सुनिश्चित करें। एक बार जब अधिकांश गिट प्लेटफॉर्म यह पता लगाते हैं कि जिस शाखा में आप विलय कर रहे हैं (इस मामले में, मास्टर) में दूसरी शाखा में मौजूद है, और स्वचालित रूप से अपडेट हो जाता है।

1
dvsoukup 18 अक्टूबर 2017, 21:10