अपडेट करने के लिए एक शेल स्क्रिप्ट बनाएं, मैं अपने विकास पर्यावरण में क्लोन किए गए 5 रिपोज़ के साथ काम कर रहा हूं। जब मैं एक Git रेपो अद्यतन करना चाहते, मैं फ़ोल्डर/घर/एड्रियन/repo1 दर्ज/और कार्य करें:3 गीट रिपोज़
Git चेकआउट मास्टर Git पुल मूल मास्टर
लेकिन फिर भी, हर सुबह मैं क्या करना है अन्य 4 repos के लिए एक ही बात है। यह काफी परेशानी है।
क्या मैं इसे एक शेल स्क्रिप्ट में रख सकता हूं? मेरा मतलब है, अगर मैं शेल स्क्रिप्ट में इन गिट कमांड लिखता हूं, और इसे चलाता हूं, तो क्या मैं सभी रिपोज़ अपडेट कर पाऊंगा?
मैं कुछ इस तरह लिखने की सोच रहा था ...
cd repo1
git checkout master
git pull origin master
cd ..
cd repo2
git checkout master
git pull origin master
cd ..
(मैं लिनक्स पर हूँ)
संपादित करें: शायद यह है कि मैं क्या सोचा था की तुलना में अधिक चुनौतीपूर्ण है। ज्यादातर बार जब मैं "गिट पुल मूल मास्टर" करता हूं, तो मुझे "आपके स्थानीय परिवर्तन .... जैसे त्रुटियों को विलय करके अधिलेखित किया जाएगा।" तो मैं संबंधित शाखा में प्रवेश करने और सामान भी छिपा सकते .. है
संपादित करें 2:
क्या मैं क्या कर रहा है, कोई विरोध होता है अगर, इसे अनदेखा और अगले रेपो के लिए जाने की सोच रहा हूँ
cd repo1
git checkout master
git pull origin master
(if there is conflict, ignore and go to the next line but dont stop here)
cd ..
cd repo2
git checkout master
git pull origin master
cd ..
लेकिन मुझे नहीं पता कि यह कैसे संश्लेषण में लिखना है।
तुम्हारे पास क्या है अगर जब आप चेकआउट करने का प्रयास करते हैं तो दूसरी शाखा में अपरिचित परिवर्तन? अगर आप खींचते हैं तो आपके पास संघर्ष होता है? थर्म ई सिद्धांत में कुछ भी गलत नहीं है जो आप करना चाहते हैं, लेकिन आपको यह सोचने की आवश्यकता है कि आपके आदेश क्यों विफल हो सकते हैं (और फिर क्या करें) – bengoesboom
हां, मुझे इसे ध्यान में रखना होगा। मैंने इसे संपादित में लिखा था। सिद्धांत रूप में, यदि कोई संघर्ष प्रकट होता है, तो इसे छीनना चाहिए। ऐसा इसलिए है क्योंकि हर रात छोड़ने से पहले और मेरी चीजें करने के बाद और मेरी पुल रिक्स करने के बाद, मैं जांचता हूं कि सबकुछ साफ और अद्यतन है, लेकिन हां, वास्तव में, सुबह में कुछ भी हो सकता है, और शायद मुझे कहीं भी छिड़काव करना चाहिए .. – ado
मुझे लगता है कि आप 'svn' तरीके से 'git' का उपयोग करके, हर दिन रिमोट पर ट्रैक रखना चाहते हैं। वास्तव में 'गिट' एक डीवीडी है, आप स्थानीय में अपना काम कर सकते हैं और पुश से पहले 'गिट पुल - रेबेस' लॉन्च कर सकते हैं। यह स्रोत को रिमोट से खींच देगा और उस पर आपका परिवर्तन लागू करेगा, इससे संघर्ष हो सकता है लेकिन हल किया जा सकता है। – dyng